Bug#494460: grub-pc: update-grub unable to generate a graphical gfxterm menu

Javier Vasquez jevv.cr at gmail.com
Sat Aug 9 22:44:12 UTC 2008


On Sat, Aug 9, 2008 at 2:31 PM, Javier Vasquez <jevv.cr at gmail.com> wrote:
> On Sat, Aug 9, 2008 at 1:04 PM, Robert Millan <rmh at aybabtu.com> wrote:
>> On Sat, Aug 09, 2008 at 10:49:12AM -0600, Familia Vasquez-Vivas wrote:
>>> Package: grub-pc
>>> Version: 1.96+20080724-6
>>> Severity: normal
>>>
>>>
>>> The update-grub script evaluates `font_path` in order to determine
>>> whether GRUB_FONT_PATH can be set to its output.  However font_path
>>> doesn't seem to be excutable...  Therefore, although $GRUB_TERMINAL
>>> originally came with the nice gfxterm setting, it gets reverted to
>>> console, and there's no longer graphical menu, :(...
>>>
>>> It was working nice to me before, not sure what happened...
>>
>> font_path is a shell function, declared in update-grub_lib.  Please describe
>> the symptoms of your problem before jumping into conclussions.
>>
>> What is it exactly that you observed?
>
> update-grub works just fine, except that I no longer get in grub.cfg
> the gfxterm stuff (so I no longer get splash image menu).  This
> happens only in all my i686 boxes, not in the amd64 one...  I modified
> update-grub several times to identify where the problem was (with my
> own debug hooks)...  Just before "case ${GRUB_TERMINAL} in" I included
> '  echo "\${GRUB_TERMINAL}  ->  ${GRUB_TERMINAL}"  ', and I got
> gfxterm.  I did exactly the same after that piece of code and I got
> console...  So I thought that was the issue.  To my surprise, this
> doesn't seem the case for amd64.
>
> I'm sorry for jumping into conclusions too soon, but after this little
> debug I thought that was the issue...
>
> So I'll try a bit further and see if there's a difference in
> update-grub that's causing i686 version not to provide me with the
> nice graphical menu, :)...
>
>> --
>> Robert Millan
>
> Thanks,
>
> --
> Javier
>

Actually I think my conclusions are not that wrong...  With the
following modifications to update-grub:

echo "\${GRUB_TERMINAL} before evaluating font_path  ==>  ${GRUB_TERMINAL}"
case ${GRUB_TERMINAL} in
  gfxterm)
    echo "Next line is output of \`font_path\`:"
    echo `font_path`
    if path=`font_path` ; then
      GRUB_FONT_PATH="${path}"
    else
      # fallback to console
      GRUB_TERMINAL=console
    fi
  ;;
esac
echo "\${GRUB_TERMINAL} after evaluating font_path  ==>  ${GRUB_TERMINAL}"

I get:

# update-grub
${GRUB_TERMINAL} before evaluating font_path  ==>  gfxterm
Next line is output of `font_path`:

${GRUB_TERMINAL} after evaluating font_path  ==>  console
Updating /boot/grub/grub.cfg ...
Found linux image: /boot/vmlinuz-2.6.26-1-686
Found initrd image: /boot/initrd.img-2.6.26-1-686
Found linux image: /boot/vmlinuz-2.6.25-2-686
Found initrd image: /boot/initrd.img-2.6.25-2-686
done

So you can actually that it's font_path returning NOTHING the
problem...  I thought because NOT being executable, but it might be
something else, but actually font_path returning nothings is causing
the problem.  Again this affects all i686 boxes, but not the only
amd64 I have.  For the amd64 I get with the same modifications:

# update-grub
${GRUB_TERMINAL} before evaluating font_path  ==>  gfxterm
Next line includes `font_path` output:
/usr/share/grub/ascii.pff
${GRUB_TERMINAL} after evaluating font_path  ==>  gfxterm
Updating /boot/grub/grub.cfg ...
Found Debian background: debian-blueish-wallpaper-640x480.tga
Found linux image: /boot/vmlinuz-2.6.26-1-amd64
Found initrd image: /boot/initrd.img-2.6.26-1-amd64
Found linux image: /boot/vmlinuz-2.6.25-2-amd64
Found initrd image: /boot/initrd.img-2.6.25-2-amd64
done

And there's a difference in here, since for i686:

# ls /usr/share/grub/
#

So the /usr/share/grub directory is empty, while for amd64 I get:

# ls /usr/share/grub/
ascii.pff  unicode.pff

So this might be the problem then...  I think this is the further I
can go, it might be that the i686 debian package just didn't include
the /usr/share/grub stuff, and that'd be pretty much it, :)

I hope that's the problem, maybe a quick one to fix...

-- 
Javier





More information about the Pkg-grub-devel mailing list