+2009-08-25 Felix Zielcke <fzielcke@z-51.de>
+
+ * util/grub.d/00_header.in: Move check for the video backend of
+ gfxterm from here ...
+ * util/grub-mkconfig.in: ... to here. Enable gfxterm if there's
+ a suitable video backend.
+
2009-08-25 Vladimir Serbinenko <phcoder@gmail.com>
Fix breakage in grub-setup.
fi
case x${GRUB_TERMINAL_OUTPUT} in
- x | xconsole | xserial | xofconsole | xgfxterm) ;;
+ x | xgfxterm)
+ # If this platform supports gfxterm, try to use it.
+ if test -e ${grub_prefix}/gfxterm.mod ; then
+ GRUB_VIDEO_BACKEND=
+ for i in vbe ; do
+ if test -e ${grub_prefix}/$i.mod ; then
+ GRUB_VIDEO_BACKEND=$i
+ break
+ fi
+ done
+ if [ -n "${GRUB_VIDEO_BACKEND}" ] ; then
+ GRUB_TERMINAL_OUTPUT=gfxterm
+ elif [ "${GRUB_TERMINAL_OUTPUT}" = "gfxterm" ] ; then
+ echo "No suitable backend could be found for gfxterm." >&2 ; exit 1
+ fi
+ fi
+ ;;
+ xconsole | xserial | xofconsole) ;;
*) echo "Invalid output terminal \"${GRUB_TERMINAL_OUTPUT}\"" >&2 ; exit 1 ;;
esac
GRUB_DEVICE_BOOT_UUID \
GRUB_FS \
GRUB_FONT_PATH \
- GRUB_PRELOAD_MODULES
+ GRUB_PRELOAD_MODULES \
+ GRUB_VIDEO_BACKEND
# These are optional, user-defined variables.
export GRUB_DEFAULT \
# Make the font accessible
prepare_grub_to_access_device `${grub_probe} --target=device ${GRUB_FONT_PATH}`
- # Pick a video backend
- video_backend=
- for i in vbe ; do
- if test -e ${grub_prefix}/$i.mod ; then
- video_backend=$i
- break
- fi
- done
- if ! [ "${video_backend}" ] ; then
- echo "No suitable backend could be found for gfxterm." >&2 ; exit 1
- fi
-
cat << EOF
if loadfont `make_system_path_relative_to_its_root ${GRUB_FONT_PATH}` ; then
set gfxmode=${GRUB_GFXMODE}
insmod gfxterm
- insmod ${video_backend}
+ insmod ${GRUB_VIDEO_BACKEND}
if terminal_output gfxterm ; then true ; else
# For backward compatibility with versions of terminal.mod that don't
# understand terminal_output