Files
sablink-distro/sys-boot/grub/files/05_distro_theme
T
2010-02-17 21:08:55 +01:00

52 lines
1.2 KiB
Bash

#!/bin/bash -e
. /lib/grub/grub-mkconfig_lib
set_blue_theme()
{
cat << EOF
set menu_color_normal=cyan/blue
set menu_color_highlight=white/blue
EOF
}
# check for usable backgrounds
use_bg=false
if [ "$GRUB_TERMINAL_OUTPUT" = "gfxterm" ] && [ -n "${GRUB_WALLPAPER}" ]; then
for i in /boot/grub/`basename ${GRUB_WALLPAPER}` ${GRUB_WALLPAPER} ; 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 background image: `basename ${bg}`" >&2
use_bg=true
break
fi
fi
done
fi
# set the background if possible
if ${use_bg} ; then
prepare_grub_to_access_device `${grub_probe} --target=device ${bg}`
cat << EOF
insmod ${reader}
if background_image `make_system_path_relative_to_its_root ${bg}` ; then
set color_normal=${GRUB_COLOR_NORMAL}
set color_highlight=${GRUB_COLOR_HIGHLIGHT}
else
EOF
fi
# otherwise, set the traditional Debian blue theme
if ${use_bg} ; then
set_blue_theme | sed -e "s/^/ /g"
echo "fi"
else
set_blue_theme
fi