Learning Linux

January 24, 2014

I ‘converted’ to OSX about 7 years ago, and have been happy using it for most of that time. I still love the Mac Air, and, after lots of learning, am pretty productive using OSX to develop software.

However a few almost random things have caused me to look seriously into using a Linux distro for my desktop computing. These are, in no particular order,

  1. the inability of a Mac Air to play 1440p video without its fan kicking off.
  2. the high cost, and/or crap quality of osx external storage devices.
  3. the vulnerability of beautiful laptops to thievery …

So I’ve built a completely overpowered desktop machine, which is capacious, heavy, ungainly, quiet and mostly empty. This resides comfortably under my desk and can just be left there. For its OS I had two choices

  1. Hackintosh
  2. Linux

Hackintoshing

Going back to where I started with OSX was quite nostalgic. Its quite alot easier to set up a Hackintosh today than it was 7 years ago, a product of Apple and Intel’s productive relationship, and a dynamic hackintosh community.

After a few hours I had a (almost) fully working system, all setup. The only problem was that USB3 wasn’t working properly. Now this sort of problem is generally not that hard to solve. You trawl the OSX86 forums, find a suitable KEXT and install it. For me that involved relearning the basics of KEXTS, the tools to work with them, and the file structures of OSX. The problem was that I really didn’t want to do this. The whole point of buying Apple and using OSX is to avoid that stuff. Its not that the learning curve is that hard, but that the result (for me) is not that satisfying.

Linuxing

A quick solution to my USB3 problem was to install Linux. The first distro I tried was Crunchbang. I’ve done quite alot of Ubuntu based Linux in the past, so this was fairly comfortable. However Debian wasn’t upto date enough for my brand new hardware, and upgrading to Sid borked everything, so then I tried Mint. Mint worked great, my external USB caddy worked perfectly, all my drives were recognised, and the installed software was perfectly adequate. However I still wasn’t happy.

Personally I just don’t see any Linux desktop distribution competing with OSX for polish. The Mint desktop just reminded me how much better OSX is at being a full general purpose OS.

However I’m not after a full general purpose OS, I’m after a super efficient programming/writing environment that helps me to work effectively. A distant second to that is general purpose computing.

So having tried two Linux distro’s I came to some interesting conclusions

  • Looking for quick solutions was proving to be somewhat frustrating
  • My linux learning curve is likely to be long and steep
  • 7 years of using OSX had taught me quite a bit about Unix - but not enough.
  • If I do move to Linux I am likely to use it for a long time
  • My experience with Vim probably applies here. Long steep learning curves can be very rewarding if you choose to learn skills that have longevity
  • Getting a distro to do all the work for me is not what I want.

All of this and a host of other things lead me to Arch linux.

The Arch Way

I’m about 4 weeks into my experiment with Arch. Its been a really mixed bag. Several times I’ve sort of given up and resorted to trying other distros (Virtualbox is so useful). I’ve tried ArchBang, Crunchbang (again), Elementary OS, and several flavours of Manjaro. All have offered an initial burst of productivity followed by disappointment.

The thing with using Arch is that it forces you to keep learning. Sure it might take me much more time to get something the way I want, however when I achieve something not only do I get a feature, but I also get a degree of understanding.

Arch and this blog

I’m going to use this blog to record some of this knowledge. This is mostly about journalling the experience for my personal benefit. If anybody else reads this, the place to learn about Arch is the Arch wiki