web analytics

Life with a hackintosh

December 10, 2013

I have OSX installed in my desktop PC, otherwise known as a hackintosh as my main computer for over two years now: started with Snow Leopard and moved my way up to the current Mavericks. Actually hackintoshes and I go back a bit more, back in 2007 when iATKOS or other OSx86 “build” was the norm (iDeneb, Kalyway, iPC, etc). They were like religions: claiming to be “the one” but no one really knows. You basically installed it (or tried to install it) and prayed.

A little bit of history
Today things got way better. Praying is still required, but once in a while there’s light at the end of the tunnel. You see, those builds relied on kernel patches, specifically XNU kernel patches. Say what? XNU is the operating system that Apple used to develop OSX, released to the world as open source Darwin. It was developed back in the NeXTSTEP days and is the foundation of both OSX and iOS. Back to XNU and XNU patches, turns out that clever folks going by the name of Mifki and Semthex started patching the open source, freely available XNU to make it work in non-Apple hardware, but before that there was crude, hard hack.Hexley

The XNU modifications may be seen as elegant, at least when compared to the original hack. When Apple switched to intel, their OS had to run on intel hardware obviously. Do you know which other OSes run on intel hardware also? Yeah, Windows, GNU/Linux and many others. So why is it then that OSX couldn’t be installed on plain old PCs? Because Macs use a thing called EFI (more on this later). The specifics of the OS lockdown through EFI mechanisms escape me, so this part is really vague but in a nutshell the hack bypassed EFI entirely.

With the XNU modifications along came a mechanism to easily patch a retail OSX install disc, to make it compatible with non-Apple hardware. This is when the floodgates opened, and the builds started to pop up everywhere. And this is when I entered the OSx86 scene. The problem was these XNU modifications and patches made the OS unreliable, prone to errors, applications wouldn’t work sometimes and forget about updating it through the normal channels. Once you got your hardware running you wouldn’t even dare to see the update button with peripheral vision.

Enter EFI emulation. EFI stands for Extensible Firmware Interface. Macs use it, and PC hardware didn’t have it back in the day. Again, clever folks decided to emulate EFI from within a modified Darwin boot loader. This was the holy grail of OSX in PC hardware as it meant OSX could run unmodified given the hardware met some specifications. The final piece of the puzzle was the modification of boot-132, a boot loader created by Apple and released as open source. This version of boot-132 was modified with EFI emulation, and there you have it: unmodified OSX booting in regular PCs.

But why?
I must say I was a little wary of going the hackintosh route. I had experience from my M.Sc. student days (I wrote my dissertation in a hackintosh, what can possibly go wrong right?) but this time it was different: I make my living doing software, if my computer doesn’t work it’s a big deal for me. But there are two things that sealed the deal:

  1. The new boot-132 method meant I could be running a stock (as close as it can be) OSX
  2. Access to proprietary software such as games…
  3. …keeping the underlying *nix

Both my desktop and laptop at the time were PCs running GNU/Linux, and it was such an upgrade from whatever was the current version of Windows at the time that I thought it would never change. My first brush with hackintoshes was mere curiosity, but not a practical decision by any length. My second approach was entirely practical and made sense. At the time I was working at INgrooves, and while I could run the entire (Windows based) development environment inside a VM, Skype was used at the time for everyday communication. I’m not familiar with current versions, but in 2011 their GNU/Linux version was still lacking. Actually their Mac version also was lacking, but it was orders of magnitude better than the GNU/Linux version (and keeps getting better).

So access to some proprietary programs that otherwise I couldn’t use is reason #1 for using a hackintosh. But why not simply buy the real deal? Enter reason #2. Besides my desktop PC, I have a 15′ MacBook Pro with retina display. It’s a great laptop, its SSD disk makes the thing fly, and the retina display makes any font look gorgeous. If you code for a living you’ll appreciate it. I need the laptop as I travel (or used to) regularly as part of my job, but a desktop PC is cheaper to upgrade, significantly more powerful and all in all more comfortable to work with. At the time the only expandable desktop Mac was the Mac Pro. Not the new black cylinder but the gorgeous original Mac Pro resembling the original Power Mac G5 and these don’t come cheap. A hackintosh means you can build a PC with better specs for half the price. That’s reason #2 right there. I pair my PC with a XFX Radeon HD 6870 and dual monitors (a Cinema Display and an ASUS 2560×1440) and forget the fact that I’m using non-Apple hardware.

What is it like?
It can be very frustrating if you don’t have the right hardware, or super easy if you do. Even if you do have the right hardware it can still frustrate the hell out of you, mainly when it’s time to upgrade. When you have the right hardware and everything’s set up correctly it is a rock solid experience. I use it as my main workstation, running dual monitors, conferencing, gaming, compiling, compiling while gamin while running several VMs at the same time, installing software from source, installing and buying from the App Store, everything works as expected. I’ve have it running for days without a hiccup.

customacThe number one thing you must do is register to tonymacx86 and check their guides. They are your one stop information for everything hackintosh related. And when I say everything, it really is everything even shopping lists if you’re in the market for an upgrade.

Speaking of updates, this is the most nerve-wracking facet of like with a hackintosh. Something seemingly simple like a video card update or replacement can hose your otherwise perfectly running hackintosh. OS updates are also finicky: sometimes they are click click click ta-da! and sometimes they end with you convincing yourself that it was time for a full format and re-install anyway.

I couldn’t stomach it if I didn’t have access to another computer, in this case my laptop. I keep my workspace and other important data directories in sync between my hackintosh and my MacBook Pro, so at any given time I can switch to my laptop and keep working even if the hackintosh is not working. I also do regular backups to an external drive every week, which I would do anyway.

In my opinion, nowadays hackintoshes are a viable alternative for desktop computers. They fill a niche left unattended by Apple: that of a powerful, expandable workstation.