diff -Nur a/util/grub.d/00_header.in b/util/grub.d/00_header.in --- a/util/grub.d/00_header.in 2011-04-06 13:14:27.000000000 +0200 +++ b/util/grub.d/00_header.in 2011-08-01 15:19:57.919100452 +0200 @@ -100,6 +100,14 @@ EOF +if [ x$GRUB_COLOR_NORMAL != x ] && [ x$GRUB_COLOR_HIGHLIGHT != x ] ; then + cat << EOF +set menu_color_normal=$GRUB_COLOR_NORMAL +set menu_color_highlight=$GRUB_COLOR_HIGHLIGHT + +EOF +fi + serial=0; gfxterm=0; for x in ${GRUB_TERMINAL_INPUT} ${GRUB_TERMINAL_OUTPUT}; do diff -Nur a/util/grub.d/10_linux.in b/util/grub.d/10_linux.in --- a/util/grub.d/10_linux.in 2011-05-14 22:36:49.000000000 +0200 +++ b/util/grub.d/10_linux.in 2011-08-01 15:56:53.324779083 +0200 @@ -31,8 +31,8 @@ if [ "x${GRUB_DISTRIBUTOR}" = "x" ] ; then OS=GNU/Linux else - OS="${GRUB_DISTRIBUTOR} GNU/Linux" - CLASS="--class $(echo ${GRUB_DISTRIBUTOR} | tr 'A-Z' 'a-z' | cut -d' ' -f1) ${CLASS}" + OS="${GRUB_DISTRIBUTOR}" + CLASS="--class $(echo ${GRUB_DISTRIBUTOR} | tr 'A-Z' 'a-z' | tr -d ' ') ${CLASS}" fi # loop-AES arranges things so that /dev/loop/X can be our root device, but @@ -65,7 +65,9 @@ version="$2" recovery="$3" args="$4" - if ${recovery} ; then + if [ -n "$5" ] ; then + title="$(gettext_quoted "%s, with Linux %s") $5" + elif ${recovery} ; then title="$(gettext_quoted "%s, with Linux %s (recovery mode)")" else title="$(gettext_quoted "%s, with Linux %s")" @@ -132,7 +134,7 @@ case x`uname -m` in xi?86 | xx86_64) - list=`for i in /boot/vmlinuz-* /vmlinuz-* /boot/kernel-* ; do + list=`for i in /boot/vmlinuz-* /vmlinuz-* /boot/kernel-* /boot/vmlinuz26-* ; do if grub_file_is_not_garbage "$i" ; then echo -n "$i " ; fi done` ;; *) @@ -160,7 +162,8 @@ "initrd.img-${alt_version}" "initrd-${alt_version}.img" \ "initrd-${alt_version}" "initramfs-${alt_version}.img" \ "initramfs-genkernel-${version}" \ - "initramfs-genkernel-${alt_version}"; do + "initramfs-genkernel-${alt_version}" \ + "${basename/vmlinuz/kernel}.img"; do if test -e "${dirname}/${i}" ; then initrd="$i" break @@ -190,6 +193,15 @@ linux_entry "${OS}" "${version}" false \ "${GRUB_CMDLINE_LINUX} ${GRUB_CMDLINE_LINUX_DEFAULT}" + for i in "initramfs-${version}-fallback.img" \ + "${basename/vmlinuz/kernel}-fallback.img"; do + if test -e "${dirname}/${i}"; then + initrd="$i" + linux_entry "${OS}" "${version}" true \ + "${GRUB_CMDLINE_LINUX} ${GRUB_CMDLINE_LINUX_DEFAULT}" Fallback + break + fi + done if [ "x${GRUB_DISABLE_RECOVERY}" != "xtrue" ]; then linux_entry "${OS}" "${version}" true \ "single ${GRUB_CMDLINE_LINUX}" diff -Nur a/util/grub-mkconfig.in b/util/grub-mkconfig.in --- a/util/grub-mkconfig.in 2011-04-06 17:45:53.000000000 +0200 +++ b/util/grub-mkconfig.in 2011-08-01 15:20:49.256867648 +0200 @@ -252,6 +252,8 @@ GRUB_THEME \ GRUB_GFXPAYLOAD_LINUX \ GRUB_DISABLE_OS_PROBER \ + GRUB_COLOR_NORMAL \ + GRUB_COLOR_HIGHLIGHT \ GRUB_INIT_TUNE \ GRUB_SAVEDEFAULT \ GRUB_BADRAM