osx86 - Welcome to Hackintosh!

Sunday Jan 11 2009

Before you continue: this is NOT a full osx86 installation guide.

It's Steve Jobs' nemesis and nightmare. It's not for the faint of heart. But... it's there. OSX86 or often referred to as 'Hackintosh'. It's the art of installing Mac OS X on hardware Steve Jobs doesn't want you to run it on: generic x86 PC hardware. Since I've had real Macs almost exclusively for 8 years now I never really got into this rather interesting scene that exists since the first release of OS X for Intel CPUs.

Hackintosh / IBM ThinkPad T41

Recently however I decided to give it a shot on the cheap used IBM ThinkPad T41 I bought right before moving to the United States. I wanted to have a computer for use at home (primarily by Pam) besides the MacBook Pro I was going to get from my employer. I didn't really have the funds for a MacBook so it had to be a cheap PC. Oh well. At first it ran Windows XP which quickly drove me insane because of it's sensitivity to viruses and trojans. I really didn't want to deal with all the maintenance it requires to keep these things free from evil. I ran Ubuntu on it for a while which was pretty nice, until I saw a picture somewhere from someone who had managed to get OS X Leopard to run on a T41... I had to have that too! Why? Because I can! And because Pam has become just as much as a Mac fan as I am.

Dark Matter Pro: a premium photoblog template.

Affiliate program available

Hardware support

Because, to say the least, Apple doesn't encourage installation of OS X on non-Apple hardware, support for the plethora of available hardware components in the PC world is limited. You'll therefore need to have a kit that's actually supported by OS X. If certain components aren't you may end up with a working install but have parts of it not working, for example WiFi, Ethernet, Sound, etc. Most people get at least the barebones stuff working but a computer without sound or network is of course not all that useful for real-world use. If you want to figure out whether it's worth a shot to attempt installing you should definitely have a look at the osx86 wiki which contains a wealth of information. Especially the hardware compatibility list is quite useful.

Even though not all hardware works, you may still end up with a system you'll personally consider 'usable'. My T41 for example has an ATI Mobility Radeon 9000 video card. This card does not support Quartz Extreme or CoreImage. At the moment it cannot be made to work. This results in somewhat sluggish graphics. I did however get it to be recognized as an AGP card and to run in the native ThinkPad 1400x1050 resolution. Because this notebook is mostly used for surfing and light office / photo editing work I can live with the somewhat slow graphics and so can Pam. The built in Intel 2100 wifi chipset didn't work for me under OS X and it doesn't look like it's going to any time soon from reading the InsanelyMac forum. While I didn't care about the graphics I DID care about the wifi. I therefore read through some hardware compatibility lists and found the NetGear WG111v3 USB wifi dongle to be compatible. I went ahead and bought one and everything worked fine.

Mission accomplished. The Leopard had landed on the T41 in a (for me) usable state.

Getting an install disk

Like I said before, Apple doesn't want us to install OS X on non-Apple hardware. It's against the EULA of OS X. I'm not sure if that really holds water legally but... it's Apple's law. This however puts OSX86 users in a somewhat weird spot. It's a very odd thing when you purchase a legitimate copy of Leopard and still operate 'illegally' because of this EULA. One could say because of this it makes little sense to purchase a legitimate copy since it doesn't make your Hackintosh legitimate anyway. That said, I'm leaving this to the reader. My advice to Steve would be to dump this dumb EULA rule because people are going to do this anyway. It will at least allow them to be legitimate paying OS X users. My position on the matter is: try if you can get OS X to run properly and if you do and you like it, buy a license. Whatever you decide, you're not gonna be able to install OS X with the actual retail installer DVD. Therefore your original copy of OS X won't serve any other purpose than clearing your conscience and looking nice on your book shelf.

Instead you're gonna need one of the 'hacked' installer DVD's that can be found on your favorite BitTorrent site. For obvious reasons I'm not gonna link you to any of those. However, if you search the internet for the various hacked distribution names you'll find it quickly enough. Some common distributions are:

  • iATKOS (I'm running this distribution)
  • iDeneb
  • Kalyway (I haven't tried it but a lot of people say it's the easiest to install)
  • Leo4All
  • Zephyroth (for AMD machines!)

Installing

I'm not going to turn this article into a 'how to get OS X installed on your crap ass PC'-entry. The reason why is that there's plenty of such guides available already. Seek, and thy shall find. Installing any of the hacked distributions may either be a breeze or a fairly complicated process. Or anything inbetween those two extremes. The most important step is customization where you have to choose kernel modules specific to your hardware. Your mileage may vary. You may need to try different installation discs. From here anything could happen. In my specific case when installing on a ThinkPad T41 things initially failed when I was using iDeneb. I got into some sort of reboot-loop after the installation had finished. The iATKOS 5i distribution however allowed me to boot into a seriously crippled OS with not much hardware working right. The resolution was wrong, the harddrive was operating at 2mb/sec speed and there was no wifi. The OS configuration sequence froze on me the first time but a second attempt got me to the OS X desktop. All these things or other problems may or may not occur when you attempt an osx86 installation. I hope it's clear now that this isn't as straightforward as in stalling Windows or Linux on most systems!

Kernels

There are various hacked OS kernels available. Most installation discs contain several. Some may work, some may not. I myself am running the xnu/voodoo kernel. There are various other ones available. You'll have to try for yourself which one works. The kernel is a single file located at /mach_kernel on your filesystem. It must be named mach_kernel so if you want to try a different one you'd need to rename your existing kernel and install the kernel you want to try under this name.

Learning to love kernel extensions

The key to getting everything to work right are custom OS X kernel extensions. The 'customize' screen I mentioned earlier allows you to pick extensions that match your hardware. However not everything that's 'out there' is included in the various hacked installation discs. This means you'll have to use the power of the internet to get what you need. The largest part of this power is concentrated at the amazing InsanelyMac forum which is a huge and active community of osx86 hackers. Everything I needed to get the T41 to play nice with Leopard I found on this invaluable forum. You're therefore highly encouraged to create an account there if you want to dive into the osx86 adventure. Make sure you use the search function to your advantage before you start asking questions on there though. I personally haven't needed to ask a single question on there. All information I needed had already been discussed in depth.

Installing custom kernel extensions can be done in various ways. An easy way to do it is with the awesome OSX86Tools. This is a configuration and system maintenance utility made specifically for non-Apple systems running OS X. Do NOT install this tool on your real Mac!

A more barebones way to mess around with kernel extensions is to use the commandline. All kernel extensions are directories that are named ExtensionName.kext. They live on your system in /System/Library/Extensions/. When you want to install a new kernel extension you simply copy the whole dir into /System/Library/Extensions/. After this you need to issue a sudo -R chown root:wheel /System/Library/Extensions/YourExtension.kext to set the permissions right. Disabling an extension is as easy as changing the part after the dot in the extension name, for example into MyExtensions.kext becomes MyExtension.disabled. If it doesn't end with .kext it won't be loaded. Finally, after making changes you have to delete the extension cache: sudo rm -f /System/Library/Extensions.mkext. After this you can reboot your system to try out your changes. Like this you can play around with different extensions. A useful command to see which kernel extensions actually got loaded on a running system is kextstat. It will give you a list of running kernel extensions. When booting your system trying out new kernels or extensions, make sure you boot with the -v (verbose) flag. This will give you lots of diagnostic boot information instead of just the grey Apple screen. If things don't work right you can also try the -x flag which boots the system in 'safe mode'. I have used this myself a couple of times to get the system to boot properly while configuring things.

Aaargh! I completely fucked it up! It won't boot (anymore)

When I was almost done with everything it happened, I installed a kernel extension that made it impossible to boot. Panic... for a moment. Then I had a beer. Then I remembered what I saw while installing iATKOS. In case you blow up your configuration there is always the option of booting with your osx86 installation disc. Most distributions (if not all of them) offer Terminal.app which can be started right before the actual installation process takes place. You can also use the Disk Utility to mess around with your harddrive from here. It will be mounted under /Volumes/YourDiskName and you can do whatever you want on the filesystem provided that you know how to use a barebones UNIX terminal. You can use Terminal.app to fix whatever you broke earlier. You can put the kernel back that you of course made a backup of before installing a new one. You can disable or enable troublesome kernel extensions as well. I for one got my T41 back alive like this after breaking things earlier.

So, unless you wanna keep reinstalling: make backups of stuff that (sort of) works before you start tinkering!. It will save you a lot of time! Note that OSX86Tools has a convenient feature to backup your entire extensions folder.

Software Update

Here's a part that sucks: You can NOT update your OS through Apple software update. That is, most of us can't. It's quite likely to break your install. Before you even attempt to run OS updates you'll have to do a fair amount of research on how to do this. It unfortunately varies between the different distributions so there's no real one size fits all approach to this. I personally didn't bother looking into updating the ThinkPad from 10.5.5 to 10.5.6. I didn't think it was worth the risk of breaking everything and having to spend a lot of time trying to fix it. Again, you're on your own here. If you want easy updates, buy a real Mac!

So, should I do this?

Good question. I suppose for some people the answer is a resounding 'No'. For others it maybe a 'Yes' or 'it depends'. If you expect a flawless 'Mac experience' you're most likely going to be disappointed. Hacked OS X boxes require a lot of tinkering and maintaining them is not at all as straightforward as maintaining a real Mac. If you like hacking around it's definitely worth a shot. If you like hacking around AND you haven't ever used OS X before: go try it! I've seen many people on the InsanelyMac form who started out with osx86 Hackintosh boxes and later on purchased a real Mac. Are you reading this Steve? osx86 actually converts people to Mac addicts!

Then there's that new thing called 'netbook'. Guess what? There is no Apple subnotebook. No such thing as a 'MacBook Nano'. Apple simply isn't offering one. There is however the MSI Wind which is so close to a real Mac in the hardware department that it runs OS X almost flawlessly. So there you have it, a $400 ultraportable OS X machine. I'm seriously thinking of getting one for this very purpose. Sorry Steve!

Check this video on YouTube and you'll understand why I think this is an extremely interesting thing to have!

Happy hacking!

Important resources

Tags: , , , , ,

bookmarking

Commentary

Join the discussion! Leave a comment through the comment form below!

Got something to add to this?

Feel free to leave a comment on this site. You can use Textile and Emoticons. Your email address is only used to show a gravatar. Please stay on-topic and use common decency. Spammers will be shot in front of a live studio audience.

If you plan on posting code, use pastebin please and post a URL to the code. The comment processing doesn't deal very well with code. Sorry for the inconvenience.

Human comment spammers: don't bother posting your crap here. Comments are moderated and I won't let any of your shit through.

Remember personal info?
Yes
No

Trackbacks

If you have an interesting related post on your own site you can leave a trackback. As they say: 'a little AJAX a day keeps the spammers away' which is why you'll have to click below to generate a trackback key. The key will be valid for 15 minutes and can be used only once.

 

  • Featured Links
RockySomewhere near the Orion NebulaBookalicio.usGolden Gate BridgeThames River BankJackie and mePimpin' it