(debian-boot is the Debian installer mailing list, so redirecting this discussion to grub package maintainers' mailing list)

On 02/02/2026 at 20:48, Volodymyr Mutel wrote:

So, in postinst script, unicode.pf2 is copied into /boot/grub/ , supposedly to improve its accessibility chances. While in grub-mkconfig it is searched and found as its original under / usr/share/grub/ if not set explicitly as GRUB_FONT= in /etc/default/grub .

You should also mention that the postinst script runs grub-install which copies unicode.pf2 into /boot/grub/fonts/, where 'loadfont unicode' will look for it.

I just tried to set up a Debian Trixie instance with /boot on vfat volume and / (root fs) on a loop image residing on the same vfat volume,
and I got this in /boot/grub/grub.cfg :
(...)
set root=(loop0)
     font="/usr/share/grub/unicode.pf2"
fi

Note that this stanza is the other alternative of

if [ x$feature_default_font_path = xy ] ; then
   font=unicode
else

The test is true ($feature_default_font_path = y), so $font = unicode and the font is loaded from /boot/grub/fonts/unicode.pf2 installed by grub-install.

(Actually, when booting with a monolithic signed GRUB image, which is the default, the font is loaded from an embedded file (memdisk)/fonts/unicode.pf2, because loading a font file from outside of the image is prohibited if secure boot is enabled)

So, my question is, were there any ideas and proposals to align the intentions of postinst script with the logic of 00_header ?

My first idea would be that postinst stops copying the font into /boot/grub/ which seems to be useless.

My second idea would be that grub.cfg should not rely on anything outside the filesystem containing /boot, so anything else GRUB needs at boot time should be copied into /boot/grub. This is already done with the background picture when its original location is not readable by GRUB.

Reply via email to