X-Git-Url: http://git.grml.org/?a=blobdiff_plain;f=templates%2Fboot%2Fgrub%2Faddons.cfg;h=b4ce608d7e5b58289274f763d512dd66e1462665;hb=c01a86b3fc9055a06f38db11b9e908b5fe03701f;hp=3b515d893d2242c96ddc5c4ef40ad86afb0280bc;hpb=67df7006433d0dcdb0262ea86b6c030ddfd46ae2;p=grml-live.git diff --git a/templates/boot/grub/addons.cfg b/templates/boot/grub/addons.cfg index 3b515d8..b4ce608 100644 --- a/templates/boot/grub/addons.cfg +++ b/templates/boot/grub/addons.cfg @@ -1,10 +1,51 @@ submenu "Addons ->" --class=submenu { +# EFI: +if [ "${grub_platform}" == "efi" ] ; then + # try to detect amd64 by checking whether CPU supports 64-bit (long) mode + if cpuid -l ; then + if test -e /boot/addons/memtest86+x64.efi ; then + menuentry "Memory test (memtest86+x64.efi)" { + linuxefi /boot/addons/memtest86+x64.efi + } + fi + else # assume i386 + if test -e /boot/addons/memtest86+x32.efi ; then + menuentry "Memory test (memtest86+x32.efi)" { + linuxefi /boot/addons/memtest86+x32.efi + } + fi + fi +fi + +# BIOS/non-EFI: if [ "${grub_platform}" != "efi" ] ; then - menuentry "Memory test (memtest86+)" { + # try to detect amd64 by checking whether CPU supports 64-bit (long) mode + if cpuid -l ; then + if test -e /boot/addons/memtest86+x64.bin ; then + menuentry "Memory test (memtest86+x64.bin)" { + insmod linux16 + linux16 /boot/addons/memtest86+x64.bin + } + elif test -e /boot/addons/memtest ; then # fallback to old memtest + menuentry "Memory test (memtest86+)" { insmod linux16 linux16 /boot/addons/memtest - } + } + fi + else # assume i386 + if test -e /boot/addons/memtest86+x32.bin ; then + menuentry "Memory test (memtest86+x32.bin)" { + insmod linux16 + linux16 /boot/addons/memtest86+x32.bin + } + elif test -e /boot/addons/memtest ; then # fallback to old memtest + menuentry "Memory test (memtest86+)" { + insmod linux16 + linux16 /boot/addons/memtest + } + fi + fi fi menuentry "iPXE - boot via network/PXE" { @@ -40,8 +81,7 @@ if [ "${grub_platform}" != "efi" ] ; then menuentry "FreeDOS" { insmod linux16 linux16 /boot/addons/memdisk - loopback balder /boot/addons/balder10.imz - initrd16 (balder)+2880 + initrd16 /boot/addons/balder10.imz } if [ ${iso_path} ] ; then @@ -79,7 +119,12 @@ if [ "${grub_platform}" != "efi" ] ; then fi # efi mode } -menuentry "Boot OS of first partition on first disk" { - set root=(hd0,1) - chainloader +1 +if [ "${grub_platform}" == "efi" ] ; then +menuentry "UEFI Firmware Settings" { + fwsetup +} +fi # efi mode + +menuentry "Boot from next device" { + exit }