Moving from Mac to Linux

February 25, 2022
Shortly before I moved house about a month ago, unsatisfied with the impending chaos, my hand (without first consulting my head) decided to launch a full pint of squash at my MacBook Air. I swiftly unplugged the power cable and took it to my neighbourhood Mac engineer. It was already too late – it was pronounced dead on arrival.

I've had Macs since before they were ubiquitous, dating back to an iBook G4. I would say before they were cool but they were definitely already cool back then. The walled garden of iOS and OSX has been on a downward trajectory, in my opinion, since the pinnacle of OS X – 10.6 Snow Leopard (now 6 years ago!). It's become less and less appealing to me and I've been flirting with the idea of switching to Linux for a while. This ill-timed accident provided me with an opportunity to either lock myself in for the life expectancy of one more fruit-branded laptop or to take the plunge and try something new.

Well, this would be a pretty short post if I hadn’t decided on the latter.

Decisions

The first thing to be aware of is the vast amount of decisions you must make for yourself. This is of course very much a two-sided coin. If someone else makes the decisions for you - great, no hassle! Until you don't agree or like one of the choices made. Then it's frustrating. On the other hand, making every decision yourself is exhausting. I'm easily paralysed by choice… what if I don't choose the right one? How do I make a decision without first having tried the options? Person A whose opinions I respect uses X but Person B who makes good decisions prefers Y!

When you buy an Apple laptop, you basically have 3 options: thin and light; thin and light and pixels; thin-ish light-ish, pixels and power and space (that's the Macbook Air, Macbook and MacBook Pro respectively). And of course you have one choice of operating system: OS X.

When you buy a PC laptop – wow. Just wow. There are hundreds to choose from. At the behest of my Linux flavoured colleagues, and as a first-timer at the whole Linux desktop thing, I went for a ThinkPad. I was advised that the hardware Lenovo throw into the ThinkPad line of laptops would have better Linux compatibility than "Ultrabooks" from competing manufacturers.

Vanity

There's no getting away from the fact that Apple make the best looking hardware. What's more, the screens (in the case of the Macbook Air even with fewer pixels that rival PC laptops) always look amazing, and the trackpad interface is superb. This pains me because I want the device I share a big chunk of my life with to be a pleasant object to be around. I want it to be easy on the eye, and I want to be able to move the pointer and scroll without wanting to tear my beard hairs out one by one. I knew that in order to embrace the switch I would have to ‘let go’ of at least the aesthetic side of these emotions.

After much deliberation I decided on a Lenovo ThinkPad X1 Carbon. It’s got a 14” 1080p screen; is thin, light; and has one of those red nipple things I’m never going to use. If you had to draw a comparison (and we must), this is Lenovo’s answer to the MacBook Air.

It’s not as beautifully designed and the screen isn’t amazing. The internal speakers are a joke and it comes adorned with a load of tacky stickers that say things like “Intel Inside” and “Windows 8 Pro”. But hey, it’s quite nice, and (remembering the let go mantra) more importantly it’s good enough.

Decisions (part 2)

The trouble with saying “I’m switching to Linux” is that it makes it sound like “Linux” is one thing. The thing you quickly learn is that “Linux” is actually a collective noun for a plethora of broadly similar (but subtly and critically different) distributions of the GNU/Linux operating system.

So the next decision for me to make was which distribution to use. After a bit of research I decided that I wanted to use Gnome, but ah hah! I fell into the first trap, Gnome is just the Desktop Environment (DE) and you can use that with any distro! So again, following the better judgement of my experienced colleagues I went for Ubuntu - the most widely adopted distro. Yeah, I’ll keep on the trodden path. Except Ubuntu comes with a horrifically ugly and clunky DE called Unity, yuck! Ok, I’ll swap that out for Gnome. Enough people have trodden here, that there’s even an official UbuntuGnome remix that does exactly what the name implies.

It all ‘just works’

So here I am typing this on Ubuntu 15.04 and Gnome 3.14 and everything appears to work! With two weeks of use under my belt, here are the things I use on a day to day basis:

Encryption

Security-wise at work, we’re required to have full disk encryption. That was a doddle to set up with the UbuntuGnome installer.

Text Editor

Previously I was coding in Sublime Text 3. Although that’s available I thought as I’m setting up from scratch I’d put Atom through its paces (before I do the inevitable and switch to Vim). I think it suffered from some performance issues when it first came out, but for me it’s been quite snappy and doesn’t require a great deal of tweaking in order to be workable for me.

Terminal

I was an iTerm2 + oh-my-zsh user on my Mac (RIP). Like Mac OS, the built-in Gnome terminal is usable, but it doesn’t do split panes which are pretty essential to me at the moment. For that reason I quickly reached for Terminator. Pretty soon I’ll be diving into tmux though, and I won’t need all this GUI business!

Music

I’m a Spotify subscriber and so haven’t bought any music for years. I’d be pretty gutted if I had no Spotify application! Thankfully Spotify maintain an official (but “unsupported”) desktop application for Ubuntu.

Web

Just on a whim, I thought I’d try Chromium as my browser, seeing as it was available with apt-get install and Chrome wasn’t (you can of course download Chrome for Linux). So far, so good! And thus far I’ve managed to avoid installing Flash too.

Mail

Many of my colleagues just use the GMail web app. I don’t like having my mail buried in a lost browser tab somewhere so I went in search of a native app. Ubuntu comes with one called Evolution which looks like it’s been plucked out of the 1990s. There’s an application called Geary which works nicely for me.

Office

UbuntuGnome comes with LibreOffice – a set of desktop applications offering comparable functionality to the MS Office suite. I’m sure it would do the job but I use Google Docs and Sheets for all of my documents of that flavour. That way I know I can pick up a machine of any variety and carry on working.

Hardware Mute

Yes, this is such a win for me that it got its own heading! We use Google Hangouts at work. On my Mac I was constantly having to find the Hangout buried in a browser tab to mute and unmute. Now I have a button on my keyboard which mutes my entire audio input, and it even has a status light indicator. It’s certainly a small detail, but as a remote worker I’m in Hangouts a lot so it takes away a repeated pain point for me.

So, what’s missing?

I used to do a bit of front end, and occasionally a bit of design. When I considered switching before, the lack of Photoshop was pretty much a deal breaker. These days, I rarely open up the Adobe behemoth. Well, never now because I can’t! I’ve got GIMP though, I’m sure if I need to use it I’ll figure it out.

I’ll tell you the biggest thing I miss: it’s having my SMSes/iMessages sync’d up between my phone on my laptop. Typing messages on a phone screen is laborious (#firstworldproblems) and being able to use a proper keyboard meant that my mum would often hear back from me. Not anymore (sorry Mum, I’m just er… really busy)!

I’m also a fan of a native calendar app that will pull together my work and personal calendars into one view. Once again, Evolution (the default mail client) does this, but is horrendously ugly. There are two nicely designed ones: Calendar (by the Gnome developers) and California (by Yorba, who make Geary). Unfortunately neither have put out a stable release yet.

No Regrets

All in all I’m happy with the switch. I’m not ecstatic, but I had pretty realistic expectations. I have to put up with hecklers – “Hey why’s Ben taking so long?”, “Oh he’s just recompiling his kernel HAHAHA”. I can honestly say I’ve not recompiled my kernel and I don’t intend to.

If you too are thinking of making the switch, I would say go for it, but be prepared. Set your expectation level from ‘idealistically perfect’ to ‘sensibly realistic’ and you’ll be fine. Let me know if you have any deal breaker questions and I’ll do my best to answer them.

I’m obviously still much of a Linux desktop n00b, so give me a shout if you’ve got any app recommendations or other tips for me.