Setup Ruby on macOS without sudo

Setup ruby on macOS without sudo and with the latest version!

It’s clear that using sudo to install gems is a bad idea. And you’re stuck with an older version of ruby and gem. But is it a lot of work to change your ways? I thought so. But it isn’t.

First I nuke my gems from orbit (it’s the only way to be sure). Some of the gems are default gems so we can’t uninstall them and you might see error messages for them.

for i in $(gem list | awk '{print $1}') ; do gem uninstall -a -I "$i" ; done

After this, gem list returns nothing, or just the default gems.

Then you can install rbenv, and a new version of ruby in its own little environment just for you, so no sudo:

brew install rbenv ruby-build

# Add rbenv to bash so that it loads every time you open a terminal
echo 'if which rbenv > /dev/null; then eval "$(rbenv init -)"; fi' >> ~/.bash_profile
source ~/.bash_profile
# Install Ruby
rbenv install 2.3.1
rbenv global 2.3.1
ruby -v

Then you’re gem installing with no sudo 4eva. Of course you need to reinstall all the gems you’ve lost. I found it rather refreshing as I didn’t really know whether I still needed any of the ones I had installed!

This was posted 4 years ago. It has 0 notes.

Charles 4

At long last, Charles 4 has been released! Charles 1 was released in 2002, nearly 14 years ago. Since then we’ve been through Charles 2 and Charles 3, both big upgrades. But for the past 11 months we’ve been hard at work on the biggest upgrade we’ve ever made to Charles!

Charles 4 includes an upgrade to the latest and greatest HTTP standard, the latest and greatest IP standard, and the biggest UI update ever for Charles. It is also the first paid upgrade in Charles’s long history.


HTTP 2 is all around you. It’s sneaky and you might not have noticed. Both the client and server need to support HTTP 2, otherwise they will downgrade automatically to HTTP 1.1. So with Charles 3 you would just have seen HTTP 1.1 everywhere. No more! With Charles 4 you can now see HTTP 2 working, and you can use all of your familiar tools; Repeat, Breakpoints, and so on. You’ll spot HTTP 2 hosts in Charles as they use a different icon—with a lightning bolt!

IPv6 is also all around you! If you’re lucky enough to have an IPv6 network and ISP you can turn on “Prefer IPv6 addresses when connecting to dual-stack hosts” on the Options tab in the Proxy Settings. Then you’ll see IPv6 addresses being used in Charles. Feel the modern IP networking (first published in 1998) flow through you!


With Charles 4 we’ve also taken the opportunity to spruce up the look of Charles, starting with the familiar, enigmatic and much-loved app icon.

I’ll let that sit by itself for a moment.

Fear not! It’s still the Charles jug, we’re not crazy! It’s just had a big polish, and we think it’s more beautiful than ever! We hope you do too.

image

We’ve also designed a completely new custom set of icons, giving Charles a more unified and refined appearance. Thank you to the wonderful Wolfgang Bartelme for all of his painstaking work on these icons and on our beloved Charles Jug 4.0.

Finally we’ve improved the native platform stylings on Mac OS X (soon to be macOS) and Windows; we’ve reduced border chrome and tweaked most of the dialog layouts in the app so that Charles looks more modern than ever.

On Mac OS X we’re using the brand new VAqua library by the excellent Alan Snyder. VAqua provides better graphical accuracy and higher performance, especially on retina screens. The keenest eyes amongst you may also notice that Charles 4 now uses sub-pixel antialiasing! Zoom in to check it out. And on the latest versions of Mac OS X, Charles 4 uses the new San Francisco typeface. Finally, for my Charlesitans with dark menu bars—there’s a little something for you in Charles 4 too.

On Windows we’re using the latest version of JGoodies, with support for Windows 8 and Windows 10. No more will your menus be odd colours! We’ve also fixed the egregious aliased text that previously appeared whenever you looked at XML responses.


There are lots of other little changes and improvements in Charles 4. We’ll be documenting these and updating the website over the coming weeks. Reach out to us on Twitter @charlesproxy if you have any questions or comments!

Don’t forget to download Charles 4 and check it out!

This was posted 4 years ago. It has 11 notes.
How to install a specific version of a ruby gem?

Say you need to run the pre 1.0 Cocoapods?

sudo gem install cocoapods -v 0.39.0

pod _0.39.0_ install

This was posted 4 years ago. It has 0 notes.
Disable documentation generation for gem update

gem update is the slowest thing my computer does. This makes it not so slow. Put it in your ~/.gemrc and never look back:

gem: –no-document

This was posted 4 years ago. It has 0 notes.
letterboxd:
“ App. This week we launched our Letterboxd iPhone app as a free download through Apple’s App Store. We’re ecstatic to put this app in your pocket (18,000 of you have grabbed it already!), and tremendously excited about how it will evolve...

letterboxd:

App.

This week we launched our Letterboxd iPhone app as a free download through Apple’s App Store. We’re ecstatic to put this app in your pocket (18,000 of you have grabbed it already!), and tremendously excited about how it will evolve the way we use Letterboxd. This was a monumental achievement for the team at HQ (particular hat tips to Grant, Ryan and Karl); the scope of the API + app development turned out to be comparable to the amount of work we did in 2011 while preparing our initial public beta.

Download from the App Store

The launch was covered by TechCrunch, IndieWire, The Next Web and many others, and the response from those who’ve installed it has been overwhelmingly positive. Today I’d like to share a little insight into the process and tell you about what we’ve built.

Process

After committing to build an iPhone app for Letterboxd, we first needed to add an API layer to our server infrastructure, to handle the transfer of data between external clients and the site. We’d piloted a small portion of the required work for Film Fest Buzz, and over the course of the past year we’ve built out the remainder of the API, which today comprises 40 individual endpoints.

The app’s interface represents an iOS-friendly take on the site’s aesthetic, and some parts of it may influence the future direction of the site. The majority of the app’s screens were designed in late 2014 — our prototype extended to 63 individual layouts, a large proportion of which have made it into the app we shipped this week.

API and iOS development was done concurrently for much of last year, and in November we invited Patron members to install and test an alpha version of the app. As always, we’re indebted to everyone who helped us to test the various builds over the past four months. (If you’ve been testing the app, please install the App Store version and we’ll get in touch when there are future betas to look at.)

What can it do?

Version 1.0 of the iPhone app supports:

  • Sign in and account creation (with 1Password support)
  • Browsing of popular, highly rated and most anticipated films
  • Film info including poster, trailer, cast, crew, studio and genre data, plus popular lists and reviews
  • Film actions: rate, like, mark as watched, add to watchlist, add/remove from a list
  • Logging of films with date, rating, review and tags (plus flags for spoilers and rewatches, and Facebook sharing if your account is connected via the site)
  • Viewing (and filtering) of your activity feed
  • Viewing and commenting on lists and reviews
  • Viewing of member profiles
  • Following and blocking of members
  • Searching for films, reviews, lists and people
  • Profile editing (including favorite films)
  • Reporting of content and members

What can’t it do (yet)?

Some items from our wishlist didn’t make it into the first version but will be added in future updates. These include:

  • More browsing options, including decade/year and genre
  • Sorting and visibility filters
  • List creation/deletion, editing and re-ordering
  • Availability on streaming services
  • Detail views for more screens (such as watched films and liked content)
  • Completion percentages for lists and cast/crew

And there’s some OS-level integrations we plan to add as well:

  • Notifications for follows, likes, comments, etc.
  • A URL scheme so the app is able to open relevant web links natively
  • 3D Touch support

Reactions

We asked on Twitter and Facebook for your reactions to the app news, and boy did you come through with flying colors. The three recipients of a year’s Pro subscription are Jennifer MacDougall for this delightful depiction of app love, Pedro Strazza for Jonah Hill’s delayed fist pump, and poor Niall Murphy who expressed his disappointment on behalf of the entire Android community in a single word. (“[We]’ve never seen such devotion in a droid before.”)

SSL

The API requires all communication with our servers to be made over an SSL connection. Prior to the launch of the first alpha version last year, we also enabled SSL as an option for site traffic (try it). We intend this to become the only way to access the website as well.

What’s next

As alluded to above, we weren’t able to make this a dual release with an accompanying Android version. We’ll be putting some focus on the public API and Android next (we’ll let you know as soon as we have something to announce), along with more site and app improvements. And if you have any app feedback, we’d love to hear it through the usual channels.

(via letterboxd)

This was posted 4 years ago. It has 10 notes. .

varnishlog queries

I always have to look up how to do queries on varnishlog. This is a good link for brief docs on the query language: https://www.varnish-cache.org/docs/trunk/reference/vsl-query.html

varnishlog -q ‘ReqURL ~ “^/about/” and ReqHeader:User-Agent ~ “Safari”’

This was posted 4 years ago. It has 0 notes.
How to Downgrade a Package via apt-get?
This was posted 4 years ago. It has 0 notes.
Keychain Access: This certificate has an invalid issuer
This was posted 4 years ago. It has 0 notes.
Debugging Makefiles

Particularly $(warning Say some stuff) or $(warning Value of $(this_variable)).

This was posted 4 years ago. It has 0 notes.
Solve screen error "Cannot open your terminal '/dev/pts/0' - please check" - makandropedia
This was posted 4 years ago. It has 0 notes.