GRUB_2 - heldersrvio/PureDarwin GitHub Wiki
GRUB, the GRand Unified Bootloader, is a boot loader from the GNU project. GRUB 2 is a complete rewrite. In early 2009, Vladimir Serbinenko has added support for booting Darwin to GRUB 2, making it suitable as an alternative to boot-132 (the original Apple Darwin boot loader). However the "COPYING" file stipulates a GPLv3 license. This page discusses how to install and use GRUB 2.
Since GRUB 2 is still under heavy development, and since the XNU-related functionality is still very new at the time of this writing (June 2009), your best option for getting the most recent version of GRUB 2 is to compile it from source.
At the time of this writing, there are some issues with compiling GRUB 2 on Mac OS X and Darwin. Hence, the follwoing instructions assume that you use a Ubuntu 8.10 Live CD (more recent versions should work as well). (This page needs to be updated to explain the procedure using Mac OS X or Darwin as well.) sudo apt-get update sudo apt-get install build-essential subversion autoconf ruby bison svn co svn://svn.sv.gnu.org/grub/trunk/grub2 cd grub2/ ./autogen.sh ./configure --enable-efiemu make sudo make install This should install GRUB 2 to /usr/local/bin, from where you can call it to install the boot loader to a disk.
Once you have installed GRUB 2 to /usr/local/bin as described above, you need to install it to the disk you want to make bootable. sudo grub-install --root-directory=/media/XXX/ /dev/sdX This should give a message like Installation finished. No error reported. This is the contents of the device map /media/disk//boot/grub/device.map. Check if this is correct or not. If any of the lines is incorrect, fix it and re-run the script `grub-install'. This has been tested with a FAT32-formatted USB stick. You need to replace /media/XXX/ with the mountpoint the partition is mounted to, and /dev/sdX with the device of the USB stick (not the partition). It might be necessary that you flag the partition bootable using cfdisk. To be investigated: Can we install this to a HFS+ volume from Ubuntu?