My Apple Powerbook 5,4 just booted for the first time using GRUB, with no manual intervention, from Apple chime to GDM prompt. This is a great milestone for GRUB2 on powerpc-ieee1275 and OpenFirmware, as until now, multiple problems in the loader would drop you to OF console straight away, although other PowerPC hardware with other firmware implementations did manage to work.
Recent fixes by Pavel in the core and some other minor fixes for the userland utils have taken grub2 to the point where it is usable on most PowerPC hardware. On Apple, the only minor issue remaining is grub-probe insisting on (hd) not being a valid device name, so for now I have to trick it into believing it's really (hd1).
In parallel, many other GRUB2 improvements haven't stopped hitting CVS
in the last months, which have seen how new contributors joined
grub-devel
and helped GRUB2 get the great momentum it's enjoying
right now. Vesa, Robert and Bean have been really active lately, and have fixed
long standing issues or written a lot of new code. One of the features GRUB2
acquired recently was image loading for background images. Much more powerful
than the implementation in GRUB Legacy, GRUB2 can now read images in multiple
formats, can handle up to 24bit colour and render a menu in arbitrary
resolutions. The menu can now show UTF-8, and the Debian package will
configure a pretty theme that matches the rest of the system if
desktop-base
is installed:
GRUB2 speaking UTF-8 Catalan
Although I'm not sure if GRUB2 is completely up-to-par with GRUB Legacy on i386/amd64, it seems the tricky bits, like video, LVM, RAID and the standard filesystems are supported and working. What GRUB2 needs now, in order to finally replace the aging and upstream-lacking GRUB Legacy you probably have installed, is massive testing. Debian has traditionally been a testbed for GRUB Legacy patches, and is also the platform where GRUB2 is being more widely tested. Having GRUB2 included in lenny's debian-installer would be a great step forward, and by the looks, I think we're well on time to manage this.
Replacing GRUB Legacy with GRUB2 is trivial. On PCs, just install the
grub-pc
package. You'll be offered to keep GRUB Legacy, but with
an added menu entry to chainload GRUB2. If you're worried that GRUB2 might
fail on your hardware, accept this, and try to load GRUB2 from GRUB. If it
works, you then know you can get rid of GRUB Legacy completely and keep GRUB2
in the MBR.
On PowerPC-based Macs, you'll have to work around the small issue I
mentioned above. Install the grub-ieee1275
package. You also
need a very recent powerpc-ibm-utils
package, which was just
uploaded to unstable.
Mount your bootstrap partition, probably /dev/hda2
in
/boot/grub
, and generate a device.map
file with
grub-mkdevicemap
. Check the contents. If your first device name
lacks a drive number such as (hd), it's probably correct, although this will
make things fail later. Change it to (hd0) for now. As
grub-install
relies on grub-probe
, you'll have to
generate your grub image by hand.
Copy all .mod
files in /usr/lib/grub/powerpc-ieee1275 to your
bootstrap partition, and generate a core.img
:
root@powerpc:/boot/grub# grub-mkimage -d . -o /boot/grub/core.img *.mod root@powerpc:/boot/grub# update-grub root@powerpc:/boot/grub# nvsetenv boot-device hd:2,core.img
The generated grub.cfg
will have references to (hd0,X), which
you'll have to correct back to (hd,X) if necessary for your OpenFirmware.
After this, you are probably ready to reboot, cross two fingers and get a
warm "Welcome to GNU GRUB!" message at boot, which will then be followed by
a standard GRUB menu, but on your nice PowerPC box. Unfortunately, the
eye candy in the screenshot above isn't available yet in this platform, as
it lacks VESA. Does someone in the audience want to contribute a video driver
for powerpc? :)