Posted 25 December 2009 - 02:39 AM
Oh yeah, you're welcome.
As for how it's done, that's actually fairly tricky business.
You see, there's this little thing called EFI, which is supposed to replace a standard BIOS in a compute (and really, I sure hope more manufacturers go down this road), and Mac OS X won't work without it.
But there's a problem. Only a few computers and motherboards support EFI aside fromApple. So you need to emulate it.
Thankfully, there's this nifty little bootloader called Chameleon, and ever since V2.0 RC 4, it's supported a number of features (including EFI emulation), that makes booting and installing Mac OS X much easier (but still tricky business if you want to boot other OS's too).
Also, Mac OS X can only be installed on a GNU Partition Table (GPT) style disk, which is a newer type of partition table. The old standby, which Windows 7 even still requires, is a Master Boot Record (MBR) style. Though Windows 7 can boot from a GPT disk if you're computer supports EFI, but mine doesn't.
Therefore, you have to make a hybrid MBR/GPT disk, which thankfully, Mac OS X will do for you automatically if you format your partitions correctly.
However, this whole process requires setting up a flash drive (8GB at least) that can boot the OS X installer, since your computer (unless it's a Mac) won't boot from the OS X install disk, unless you do a bunch of special stuff that's not worth my time. But setting up the flash drive itself requires the Mac OS. Thankfully, a friend of mine let me take care of that on his Mac Book Pro.
Anyway, basically, you partition the disk a certain way in OS X (using a GPT style table), and it'll set it up as a hybrid MBR/GPT disk.
Then, you install Windows (which requires the MBR style). Once this is done, you install Ubuntu (though GParted, the Linux partition editor, will treat the disk as a standard GPT disk, and destroy the MBR portion. Though technically, Windows is installed on the GPT portion while it thinks it's on an MBR, so it's still there).
Now, we need to install the Chameleon boot loader. The separate OS X installation will come in handy for this. First, you download the bootloader onto your desktop (it's a folder with a bunch of stuff in it). Then, you type a bunch of stuff into the Mac OS X terminal window (I won't go into detail. There's a lot of stuff). Once this is done, we move on to the next step.
Since installing Ubuntu screws up the Hybrid scheme, you have to go and fix it. So, I went and downloaded gptsync. Though I installed OS X on a separate disk previously, so I could use it incase I needed OS X for something. So I ran GPTSync from that separate OS X installation.
Throughout all of this, the bootloader for windows has been destroyed. So after you run gptsync to fix the MBR portion, you have to fix the windows bootloader.
But before that, you have to set the Windows partition as active (again) so that the repair console on the windows install disk will read your installation and fix the problem.
So, the partition is set active, and you boot up the windows disk. Go to the repair section, and it should identify your installation automatically and realize that it needs fixing. So it'll fix it for you.
Now you'll want to test out the bootloader to make sure everything boots (after the umpteenth attempt at this, it finally worked. I figured out what I was doing wrong.).
Now, you finally get to install OS X. So, you go ahead and do so. Boot up the installer from your USB drive, format the fourth partition (first is the special EFI partition the Mac OS X makes and never uses, which is now repurposed to hold the bootloader and .kext's and stuff, second is Windows, third is Ubuntu. Must be set up like this), and let OS X install.
So now everything's installed and booting properly! Right?
No.
For some reason, the Windows bootloader is broken. AGAIN. So you get to go fix it.
Now, everything works. Spic and span.
Well, everything except for the sound in OS X, but that can be fixed by editing the DSDT.aml file with a special program. I won't get into that. Complicated stuff. Even more so than what I've just typed out.
And that's the gist of it. Had to follow like, three separate guides, and then figure stuff out myself before I finally got it working. Now, I'm going to write an in-depth tutorial and post it on a website some friends and I are working on.