Sunday, November 01, 2009

Hackintosh!

I've never been a huge Mac fan, although I have a representative sampling of old machines in my collection o' historic computer junk. Still, I find them interesting.

Most of them were either bargains from Goodwill or cast-offs from a local university, running versions of the Mac OS from 6.x to 8.5. I played with them mostly as curiosities. Once finished I'd go back to my Windows or (later) my Linux machines.

Being the sometimes artist, I have lots of friends firmly in the Mac world, so I'm familiar with the basics of the cult of the Mac.

Because of his interest in the arts, when oldest son got ready to leave for college he chose an iBook laptop (at my suggestion) rather than a PC. He loves it, and later upgraded to a MacBook. His laptop was my first exposure to OS X.

A little history

The road to OS X from previous Mac operating systems was, to coin a phrase, a maze of twisty little passages, all different (if you're interested in this sort of thing there's also an online history of all Apple's OS's which makes for fascinating -- if not geekish --  reading). What eventually emerged was built on a foundation of BSD Unix, well disguised in Apple designer label clothing.

The first version of Mac OS X publicly debuted 2001 and ran on PowerPC processors. Flash forward to June 6, 2005, when Apple announced its plans to switch to Intel processors. Despite a certain amount of wailing from current Mac owners, the eyes of many PC owners lit up.

Would Apple sell OS X without Apple hardware?

The answer was a resounding Hell No!

Nature abhors a vacuum. And the the denizens of the internet love a challenge. And so was born a movement to enable what has become referred to as the OSX86 or Hackintosh: creating patched version of OS X that will run on non-Apple x86 processors from Intel/AMD.

First steps

While I'd played with actual Macs with OS X as well as OSX86 VMWare images, I hadn't actually built a Hackintosh of my own. A conversation with a co-worker who'd put OSX86 on a netbook convinced me it was time.

Here's the challenge when it comes to building the Hackintosh: when Apple builds the hardware, they know exactly what components they need to support.  When rolling your own, you must know what's in your machine: every chipset and hardware variation.

The resource for the would be system builder is the OSX86 Project site. The OSX86 Wiki has HCL (hardware compatibility lists) for the various patched OSX releases so you can determine the best release to use, given your hardware. Do a search for your particular machine.

If (like me) you typically build your own systems, you've got your work cut out for you. I took the coward's way and decided to repurpose an old Dell Dimension I bought 8 years ago. Based on what I found in the HCLs and the iHackintosh site, I decided to install release 10.5.6.

Obtaining the release

Because of the many variations out there, you are advised to do your research before deciding which release to obtain. Google is your friend - use it a lot. The more specific you can be in your search term, the better off you will be.  Use the OSX86 Wiki installation guides as a roadmap.

Since Apple has chosen not to make the install disks available for non-Apple hardware, to get the appropriate release, you will be forced to find it in the wild and download it via BitTorrent. The legality of this is on your conscience, not mine.  Also, it must be said, there is a lot of junk out there on the net, and the potential for downloading malware-infested stuff certainly exists. In the end, the decision whether or not to go this route is up to you.

That being said, should you chose to proceed, be aware the release ISO image will end up being around 4.3 GB -- a full DVD. Depending on your amount of available bandwidth, this could take some time to download.

Once downloaded burn the ISO to a DVD using your CD/DVD burning software of choice. You're ready to proceed.

Getting ready to install

I'd previously decided to install this little experiment on an old Dell Dimension 4400. Since it was still in use, I cleaned up the C drive as much as possible (I never cease to be amazed at how much crap can accumulate on one's hard drive). I wasn't going to be able to blow away the existing install, and so decided to put OS X on a separate drive. To simplify swapping out the drives, I installed a removable drive bay I had hanging around.

As previously mentioned, I'd downloaded iPC OSx86 Universal 10.5.6 Final and burned it to DVD. I'd also bookmarked a set of thorough and detailed installation instructions from the list of guides.

I put an old 30 GB drive in the removable drive bay, on the theory I might be doing this several times. This would be my dry run. It was a good plan.

I booted from the DVD, and did my first install, based on the instructions in the install guide and HCL for the Dell Dimension 4400. I repartitioned and formatted the hard drive then selected the newly visible target disk.

As mentioned in the install instructions, you must do a custom install. That's how you select the various patches needed to support the the non-Apple hardware. The HCL will make suggestions, but be forewarned: there is a certain amount of trial and error involved.

First install: close but no cigar

I rebooted after my first install attempt and did post install setup -- adding user accounts, etc.

First thing I noticed was the video display didn't recognize my wide-screen monitor -- everything was squished. I went to the System Preferences and found only the default video resolution: 1024x 768. Disappointing but not surprising. Also, my sound card - a Creative Labs SB Live! -- wasn't recognized.

More problematic was that I had no ethernet card, since I couldn't get on the web and download drivers if necessary. Solving this last problem was accomplished by switching out the Cnet card that had come with the Dell with a Netgear card. Both supposedly used the ubiquitous Tulip driver. After swapping the cards out and rebooting -- I had internet!

Second install - can you hear me now?

After doing more research (including opening the case and finding the chipset on my SB Live! sound card) I found the kX audio driver listed as the best choice for supporting my card. Another round of reformatting (for a clean install) and booting from DVD.

The kX driver did the trick. I started iTunes and tuned into a streaming radio station. Score.

Third and fourth install - I can see clearly now

Video turned out to be more problematic. I was using an ATI Radeon 9550 card, and despite my best research efforts, could not find what I felt was a slam-dunk solution.

Plan B: find a different video card.

After checking other machines at the house for potential candidates for swapping out cards, I hit the Frys website and found they had a GeForce 5200 FX card (supported) for a mere $30. Since I wasn't planning on making this 8 year old Dell into a cutting edge gaming box, this seemed perfect.

With the new card, I re-installed yet again, choosing the Natit driver this time. The results were not wonderful. I had a number of display anomolys: partial screen redraws when scrolling and other weirdness. Plus I still couldn't set my screen resolution to use my wide-screen monitor.  I probably could have done some tweaking so it would work but the process seemed labor intensive.

More research and a new plan of attack

A fourth install, this time using NVinject with default legacy GeForce drivers (since the card version was lower than 6xxx).  I may have been able to do it with just the legacy GeForce drivers but was tired of doing reinstalls, and this sounded like the recommended process.

Reboot and -- success! No more squashed display. I was able to go to System Preferences and set the resolution to 1440x900 : the display was now perfect.

I now have a fully functioning Hackintosh.

Post install software

The install does leaves out some notable Apple software, including Garage Band and iLife, mostly in the interest of keeping the ISO size such that it can be burned to a non-dual-layer DVD. If those are important to you, well, sorry.

First thing I installed was Firefox, since I use it on Windows and Linux. Not that Safari is all that bad, but I'm a creature of habit. Plus I'm a slave to several plugins.

Next on the list was updating iTunes to the latest version. That also meant updating QuickTime.

If you don't have a copy of MS Office in your back pocket, I highly recommend NeoOffice, which is mostly MS Office compatible and is built on top of the OpenOffice codebase. In many ways I prefer it to the regular OpenOffice suite. Did I mention it's open source, and free?

With an office suite, I needed a printer. Warning: you'll only be able to use a USB or networked printer. No parallel port support. I've got an ancient HP LaserJet 4L which I ended up connecting via a DLink parallel port to USB cable. This is why I never throw anything away.

Final thoughts

So I now have a functioning computer running Mac OS X.

I find it interesting. This has given me an opportunity to dip my toe in the Mac OS X environment. The actual hardware is still a big ugly clunky Dell -- nothing like the elegant iMacs or tiny MiniMacs, both of which I've had my eye on for a while.

Will I ever buy a real Mac? Maybe. Has this made me more inclined to buy one? Maybe. Which is why Apple probably tolerates this little subculture of Pseudo-Mac-ery.

The process is sufficiently difficult that I doubt they are losing that many sales among their target audience, whoever that is. Instead, they build stealth market share among the digerati. And let's face it, market share is arguably more important than a few lost sales which they may never have made in the first place.

Just ask Microsoft. They've known it for years.

(Written and posted on my new Hackintosh)

3 comments:

Dan Brekke said...

Now I know why they call you -- or you call yourself -- "Doctor." I've liked my Macs. I've never gotten past the point of remembering they're computers, though -- not some sort of Stargate to universal truth (which seems to be the attitude among some of the Fanatics).

Dr Ralph said...

When youngest son was but a wee child I gave him an old keyring. He amused himself for over an hour trying one key after another in a file cabinet lock until he finally found one that opened the lock (it was a big keyring).

He comes by this instinct honestly -- I'm not all that smart but I'll stick with something for a long time if it rouses my curiosity. So it was with this project.

I've been fascinated for a while by how user interfaces have evolved over the years. Computers are tools and a well-designed tool is a lot easier to use.

As we often say in my office the biggest challenges are not technical; they're political. Most lack of interoperability between systems is there by design.

Dan Brekke said...

Oh, yeah -- the politics. I know about that, more from an end-user perspective. Somehow I was put in charge of a newsroom software project at my public radio station. More exactly, getting better integration of the software into our production processes. Very few people in the process, on the editorial end or the engineering end, look at this as a tool issue. It's all history, culture, and politics. Maybe too much too overcome, in fact; however, it's occasionally interesting to observe.

ShareThis