Package: grub-pc Version: 1.96+20080724-8 Severity: wishlist Tags: patch On some computers the screen display is not scaled if operated on a low resolution. Instead, the image is simply displayed smaller. It should be made easy to change the resolution that grub expects (defaults to 640x480).
The resolution could be encoded in a variable in /etc/default/grub, e.g. GRUB_GEOMETRY. If the value of this is changed, the background picture might become unusable. Therefore it is necessary to create one if the picture in this resolution was not present before. Took the command (rsvg) for that from bug #465087. Missing in patch: * Clean up unneeded automatically created pictures in 05_debian_theme. * Automatically detect the correct panel resolution in update-grub. -- Package-specific info: *********************** BEGIN /proc/mounts /dev/mapper/gucky-root / ext3 rw,errors=remount-ro,data=ordered 0 0 /dev/mapper/gucky-root /dev/.static/dev ext3 rw,errors=remount-ro,data=ordered 0 0 /dev/hda1 /boot ext3 rw,errors=continue,data=ordered 0 0 /dev/mapper/gucky-home /home ext3 rw,errors=continue,data=ordered 0 0 /dev/mapper/gucky-tmp /tmp ext3 rw,errors=continue,data=ordered 0 0 /dev/mapper/gucky-usr /usr ext3 rw,errors=continue,data=ordered 0 0 /dev/mapper/gucky-var /var ext3 rw,errors=continue,data=ordered 0 0 *********************** END /proc/mounts *********************** BEGIN /boot/grub/device.map (hd0) /dev/hda *********************** END /boot/grub/device.map *********************** BEGIN /boot/grub/grub.cfg # # DO NOT EDIT THIS FILE # # It is automatically generated by /usr/sbin/update-grub using templates # from /etc/grub.d and settings from /etc/default/grub # ### BEGIN /etc/grub.d/00_header ### set default=0 set timeout=5 set root=(hd0,1) search --fs-uuid --set 6e31361b-1310-4f39-b039-47fa5c0aefc8 if font /grub/ascii.pff ; then set gfxmode=1024x768 insmod gfxterm insmod vbe terminal gfxterm fi ### END /etc/grub.d/00_header ### ### BEGIN /etc/grub.d/05_debian_theme ### set root=(hd0,1) search --fs-uuid --set 6e31361b-1310-4f39-b039-47fa5c0aefc8 insmod png if background_image /grub/debian-blueish-wallpaper-1024x768.png ; then set color_normal=black/black set color_highlight=magenta/black else set menu_color_normal=cyan/blue set menu_color_highlight=white/blue fi ### END /etc/grub.d/05_debian_theme ### ### BEGIN /etc/grub.d/10_hurd ### ### END /etc/grub.d/10_hurd ### ### BEGIN /etc/grub.d/10_linux ### set root=(hd0,1) search --fs-uuid --set 6e31361b-1310-4f39-b039-47fa5c0aefc8 menuentry "Debian GNU/Linux, linux 2.6.25-2-686" { linux /vmlinuz-2.6.25-2-686 root=/dev/mapper/gucky-root ro vga=792 splash initrd /initrd.img-2.6.25-2-686 } menuentry "Debian GNU/Linux, linux 2.6.25-2-686 (single-user mode)" { linux /vmlinuz-2.6.25-2-686 root=/dev/mapper/gucky-root ro single initrd /initrd.img-2.6.25-2-686 } menuentry "Debian GNU/Linux, linux 2.6.18-6-686" { linux /vmlinuz-2.6.18-6-686 root=/dev/mapper/gucky-root ro vga=792 splash initrd /initrd.img-2.6.18-6-686 } menuentry "Debian GNU/Linux, linux 2.6.18-6-686 (single-user mode)" { linux /vmlinuz-2.6.18-6-686 root=/dev/mapper/gucky-root ro single initrd /initrd.img-2.6.18-6-686 } ### END /etc/grub.d/10_linux ### ### BEGIN /etc/grub.d/30_os-prober ### ### END /etc/grub.d/30_os-prober ### ### BEGIN /etc/grub.d/40_custom ### # This file is an example on how to add custom entries ### END /etc/grub.d/40_custom ### *********************** END /boot/grub/grub.cfg -- System Information: Debian Release: lenny/sid APT prefers stable APT policy: (990, 'stable'), (400, 'testing'), (90, 'unstable') Architecture: i386 (i686) Shell: /bin/sh linked to /bin/bash Kernel: Linux 2.6.25-2-686 Locale: LANG=de_DE.UTF-8, LC_CTYPE=de_DE.UTF-8 (charmap=UTF-8) Versions of packages grub-pc depends on: ii debconf [debconf-2.0] 1.5.11etch2 Debian configuration management sy ii grub-common 1.96+20080724-8 GRand Unified Bootloader, version ii libc6 2.7-13 GNU C Library: Shared libraries ii liblzo2-2 2.03-1 data compression library ii libncurses5 5.6+20080713-1 shared libraries for terminal hand grub-pc recommends no packages. -- debconf information: * grub-pc/linux_cmdline: * grub-pc/chainload_from_menu.lst: true -- Olaf Mandel <[EMAIL PROTECTED]> <http://www.olaf.mandel.name/> PGP key: 1024D/33398848 2002-09-19 Fingerprint: 0E33 BEA6 1A71 9C5E 62BD FC0E 99A7 D2C6 3339 8848
diff -urN grub2-1.96+20080724/debian/default/grub grub2-1.96+20080724_new/debian/default/grub --- grub2-1.96+20080724/debian/default/grub 2008-08-19 23:33:17.000000000 -0700 +++ grub2-1.96+20080724_new/debian/default/grub 2008-08-19 23:42:38.000000000 -0700 @@ -5,8 +5,19 @@ GRUB_DISTRIBUTOR=`lsb_release -i -s 2> /dev/null || echo Debian` GRUB_CMDLINE_LINUX= +# Uncomment to add parameters to the "normal" kernel lines, but not to the +# "(single user)" ones +#GRUB_CMDLINE_LINUX_DEFAULT="vga=791 splash" + +# Uncomment to overwrite the default resolution +#GRUB_GEOMETRY=1024x768 + # Uncomment to disable graphical terminal (grub-pc only) #GRUB_TERMINAL=console # Uncomment if you don't want GRUB to pass "root=UUID=xxx" parameter to Linux #GRUB_DISABLE_LINUX_UUID=true + +# Uncomment to automatically generate missing background images in this +# directory +#GRUB_AUTOGEN_IMAGE_DIR=/boot/grub diff -urN grub2-1.96+20080724/debian/grub.d/05_debian_theme grub2-1.96+20080724_new/debian/grub.d/05_debian_theme --- grub2-1.96+20080724/debian/grub.d/05_debian_theme 2008-08-19 23:33:17.000000000 -0700 +++ grub2-1.96+20080724_new/debian/grub.d/05_debian_theme 2008-08-20 00:06:16.000000000 -0700 @@ -13,21 +13,36 @@ # check for usable backgrounds use_bg=false if [ "$GRUB_TERMINAL" = "gfxterm" ] ; then - for i in {/boot/grub,/usr/share/images/desktop-base}/debian-blueish-wallpaper-640x480.{png,tga} ; do - if is_path_readable_by_grub $i ; then - bg=$i - case ${bg} in - *.png) reader=png ;; - *.tga) reader=tga ;; - *.jpg|*.jpeg) reader=jpeg ;; - esac - if test -e /boot/grub/${reader}.mod ; then - echo "Found Debian background: `basename ${bg}`" >&2 - use_bg=true - break + if [ "x$GRUB_AUTOGEN_IMAGE_DIR" = "x" -o "x`which rsvg`" = "x" -o \! -e /boot/grub/png.mod ]; then + for i in {/boot/grub,/usr/share/images/desktop-base}/debian-blueish-wallpaper-${GRUB_GEOMETRY}.{png,tga,jpg,jpeg} ; do + if is_path_readable_by_grub $i ; then + bg=$i + case ${bg} in + *.png) reader=png ;; + *.tga) reader=tga ;; + *.jpg|*.jpeg) reader=jpeg ;; + esac + if test -e /boot/grub/${reader}.mod ; then + echo "Found Debian background: `basename ${bg}`" >&2 + use_bg=true + break + fi fi + done + else + bg=${GRUB_AUTOGEN_IMAGE_DIR}/debian-blueish-wallpaper-${GRUB_GEOMETRY}.png + reader=png + if [ -f "$bg" ] && is_path_readable_by_grub "$bg"; then + echo "Found Debian background: `basename ${bg}`" >&2 + use_bg=true + elif [ -f /usr/share/images/desktop-base/debian-blueish-wallpaper.svg -a -d "${GRUB_AUTOGEN_IMAGE_DIR}" ]; then + echo "Generating Debian background: `basename ${bg}`" >&2 + w=`echo ${GRUB_GEOMETRY}|sed 's/x.*//'` + h=`echo ${GRUB_GEOMETRY}|sed 's/.*x//'` + rsvg -w $w -h $h /usr/share/images/desktop-base/debian-blueish-wallpaper.svg "$bg" + use_bg=true fi - done + fi fi # set the background if possible diff -urN grub2-1.96+20080724/util/grub.d/00_header.in grub2-1.96+20080724_new/util/grub.d/00_header.in --- grub2-1.96+20080724/util/grub.d/00_header.in 2008-06-21 06:51:19.000000000 -0700 +++ grub2-1.96+20080724_new/util/grub.d/00_header.in 2008-08-19 23:04:58.000000000 -0700 @@ -43,7 +43,7 @@ prepare_grub_to_access_device `${grub_probe} --target=device ${GRUB_FONT_PATH}` cat << EOF if font `make_system_path_relative_to_its_root ${GRUB_FONT_PATH}` ; then - set gfxmode=640x480 + set gfxmode=${GRUB_GEOMETRY} insmod gfxterm insmod vbe terminal gfxterm diff -urN grub2-1.96+20080724/util/update-grub.in grub2-1.96+20080724_new/util/update-grub.in --- grub2-1.96+20080724/util/update-grub.in 2008-06-16 13:29:55.000000000 -0700 +++ grub2-1.96+20080724_new/util/update-grub.in 2008-08-19 23:43:12.000000000 -0700 @@ -111,6 +111,9 @@ # choosing Hurd filesystem module. GRUB_FS="`${grub_probe} --target=fs / 2> /dev/null || echo unknown`" +# Screen size for gfxterm and background image +GRUB_GEOMETRY=640x480 + if test -f ${sysconfdir}/default/grub ; then . ${sysconfdir}/default/grub fi @@ -149,10 +152,10 @@ # These are defined in this script, export them here so that user can # override them. -export GRUB_DEVICE GRUB_DEVICE_UUID GRUB_DEVICE_BOOT GRUB_DEVICE_BOOT_UUID GRUB_FS GRUB_FONT_PATH GRUB_PRELOAD_MODULES +export GRUB_DEVICE GRUB_DEVICE_UUID GRUB_DEVICE_BOOT GRUB_DEVICE_BOOT_UUID GRUB_FS GRUB_FONT_PATH GRUB_PRELOAD_MODULES GRUB_GEOMETRY # These are optional, user-defined variables. -export GRUB_DEFAULT GRUB_TIMEOUT GRUB_DISTRIBUTOR GRUB_CMDLINE_LINUX GRUB_CMDLINE_LINUX_DEFAULT GRUB_TERMINAL GRUB_SERIAL_COMMAND GRUB_DISABLE_LINUX_UUID +export GRUB_DEFAULT GRUB_TIMEOUT GRUB_DISTRIBUTOR GRUB_CMDLINE_LINUX GRUB_CMDLINE_LINUX_DEFAULT GRUB_TERMINAL GRUB_SERIAL_COMMAND GRUB_DISABLE_LINUX_UUID GRUB_AUTOGEN_IMAGE_DIR exec > ${grub_cfg}.new --- grub2-1.96+20080724/debian/control 2008-08-19 23:33:17.000000000 -0700 +++ grub2-1.96+20080724_new/debian/control 2008-08-20 00:17:54.000000000 -0700 @@ -47,7 +47,7 @@ Provides: grub Replaces: pupa, grub, grub2 (<< ${Source-Version}), grub-common (<= 1.96+20080413-1) Conflicts: pupa, grub, desktop-base (= 4.0.5) -Suggests: desktop-base (>= 4.0.6), os-prober +Suggests: desktop-base (>= 4.0.6), os-prober, librsvg2-bin Description: GRand Unified Bootloader, version 2 (PC/BIOS version) GRUB is a portable, powerful bootloader. This version of GRUB is based on a cleaner design than its predecessors, and provides the following new features:
signature.asc
Description: OpenPGP digital signature