Much as I find Apple people annoying, I like Cupertino hardware a great deal. With the move to Intel hardware the UNIX-like Mac OS X finally has room to stretch its legs too.
If Macs are essentially PCs, which in turn is a standardised platform that runs Windows, Linux and BSDs happily, could you not run Mac OS X on anything? If you really want to know, head down the ”Hackintosh„ route - running Mac OS X on hardware that isn't Apple-made. Make sure before you begin that you're armed with a good amount of technical nous and even more patience.
A word of warning right from the start though: getting a Hackintosh up and running can be seriously Deep Geek. I’ve tried Hackintoshes before and while I admire the community effort going into working around Apple’s quirks and foibles, I came away realising they’re not for average users.
For starters, OS X uses the Extensible Firmware Interface (EFI) rather than the BIOS used by most PCs. This means you have to use a boot loader such as Chameleon to emulate EFI, and also make sure that your BIOS settings are correct with Advanced Host Controller Interface (AHCI) for storage and the 64-bit High Precision Event Timer (HPET) enabled. If they’re not, you get a kernel panic when you boot up OS X. What’s more, under certain conditions OS X resets your BIOS by clearing the CMOS.
That’s not the end of the FLAs though. OS X uses ACPI - the Advanced Control and Power Interface - like PCs to set up devices. The important part of ACPI is the Differentiated System Description Table, or DSDT, that tells OS X what the base system is. The DSDT is stored in the BIOS of the computer, and you can grab it, disassemble and recompile it with freely available tools to make sure your hardware is recognised by OS X.
Some hardware can be animated by using drivers, which are called Kernel Extensions or Kexts. Many Hackintosh installations load the operating system, and then you head over to aites such as kexts.com or tonymacx86.com, or even insanelymac.com and snag some drivers. I did say you need to be intimately acquainted with your hardware, didn’t I? Not just that, but you also need a large amount of reading and Googling detailed information and potential problems before you install anything.
Install the wrong Kext or DSDT, and boom, kernel panic strikes. In previous Hackintosh setups, this used to happen each time you fired up Software Update, unless you took precautions and manually upgraded stuff.
However, this time around there is an easy way. The excellent Kakewalk [kakewalk.se] set of scripts will do all the heavy lifting for you, provided you make sure to use a compatible motherboard. Gigabyte boards seem to be popular with Hackintoshers, and I happened to have a spare EX58-UD4 model handy, with a 3.2GHz Core i7.
Cutting a huge saga short, Kakewalk 4.0.1 extracted the necessary disk image from the copy of OS X 10.7 Lion that I plonked down $39 for, added a boot loader, hardware drivers and installed everything to a bootable, 8GB USB stick.
Installing Lion on the Hackintosh machine took maybe an hour all in all and afterwards everything worked aside from the audio and the ability to put the computer to sleep. The first problem was easily solved with a VoodooHDA driver, but the second was trickier as Apple’s CPU power management driver doesn’t like PC ACPI implementations and has to be disabled. Getting this to work requires DSDT work.
It’s not impossible however, and after a bit of trial and error plus the obligatory kernel panics, I had a Mac Pro-like Hackintosh. Fast and stable, I can almost pretend I’ve got a Mac Pro if I don’t look too closely at the fairly ugly tower case and the PC keyboard that’s awkward to use with OS X. Because Apple’s OS X code is left alone, you can now run Software Update without too many worries.
Provided you’re willing to put in the huge effort, are Hackintoshes legal? I can’t tell for sure: the underlying operating system is Darwin which is free and open software, and the same goes for the XNU kernel, which incorporates Mach, FreeBSD and NetBSD code.
But, despite being FOSS-based, Apple’s end-user licence says you can’t install, use or run OS X on non-Apple-labelled hardware. Any commercial use is an absolute no-no: Apple has cracked down on commercial Hackintosh operations like PsyStar in the past, and will do so again.
That said, word amongst the OS X x86 crowd is that Apple doesn’t care that much about amateur Hackintosh-ery. I imagine this is because it’s hard to imagine anyone bar myself and a small band of techies with a masochistic bent actually putting together a Hackintosh and getting it up and running.
Everybody else will happily continue to sell both their kidneys for that lovely, tested and stable hardware that just works, and I totally understand why.