Grub splash setting does not account for partitions

Bug #7590 reported by Mark Shuttleworth
8
Affects Status Importance Assigned to Milestone
grub (Ubuntu)
Fix Released
Medium
Nathaniel McCallum

Bug Description

On my desktop machine, /boot is its own partition. The Grub setup scripts which
introduced the splash screen did not take that into account. They correctly
identified the boot partition as (hd1,0) but then they used a path like
(hd1,0)/boot/grub/splash.xpm.gz

The correct path in this case it (hd1,0)/grub/splash.xpm.gz

I believe it already has to figure this out for kernels and intird images, so
the code should be there for splash screens too.

In my case, this resulted in significant framebuffer corruption, so perhaps a
second bug needs to be filed to make sure that a missing splash image is
gracefully handled. Nathaniel?

Revision history for this message
Nathaniel McCallum (nmccallum) wrote :

There should be a symbolic link on the boot partition that does this boot -> ./

This is fairly standard practice. If this is not the case, we probably need to
file a bug with the installer... Colin?

Revision history for this message
Colin Watson (cjwatson) wrote :

Ugh, that's horrible. I don't believe that's ever been either standard practice
or necessary in Debian.

Revision history for this message
Matt Zimmerman (mdz) wrote :

I don't think it's necessary to hack around it this way; it should be simple to
fix it right. This is what update-grub does for the kernels:

        # figure out where grub looks for the kernels at boot time
        kernel_dir=/boot
        if [ -n "$boot_device" ] ; then
                kernel_dir=
        fi

Then, the kernels and initrds are referenced relative to $kernel_dir

Revision history for this message
Colin Watson (cjwatson) wrote :

Created an attachment (id=26)
untested fix

Revision history for this message
Colin Watson (cjwatson) wrote :

How about the attached fix? Mostly untested, but it's simple and seems like the
right idea.

Revision history for this message
Colin Watson (cjwatson) wrote :

Oops, that's wrong because $boot_device is the device name, not /boot; still,
it'll work with a small modification.

Revision history for this message
Colin Watson (cjwatson) wrote :

grub (0.95+cvs20040624-3ubuntu11) warty; urgency=low

  * debian/update-grub: Cope with /boot on a separate partition (closes:
    Warty #831).

 -- Colin Watson <email address hidden> Thu, 26 Aug 2004 17:58:39 +0100

To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.