# Load partition table and file system modules
insmod part_gpt
insmod part_msdos
insmod fat
insmod iso9660
insmod ntfs
insmod ntfscomp
insmod exfat
insmod udf
# Use graphics-mode output
insmod all_video
insmod font
if loadfont "${prefix}/fonts/unicode.pf2" ; then
set gfxmode = "auto"
terminal_input console
terminal_output console
fi
# Enable serial console
if serial --unit = 0 --speed=115200; then
terminal_input --append serial
terminal_output --append serial
fi
# Search for the ISO volume
if [ -z "${ARCHISO_UUID}" ]; then
if [ -z "${ARCHISO_HINT}" ]; then
regexp --set = 1:ARCHISO_HINT '^\(([^)]+)\)' "${cmdpath}"
fi
search --no-floppy --set = root --file '%ARCHISO_SEARCH_FILENAME%' --hint "${ARCHISO_HINT}"
probe --set ARCHISO_UUID --fs-uuid "${root}"
fi
# Set default menu entry
default = alci
timeout = 15
timeout_style = menu
# GRUB init tune for accessibility
play 600 988 1 1319 4
# Menu entries
menuentry "Alci install medium (x86_64, UEFI)" --class arch --class gnu-linux --class gnu --class os --id 'alci' {
set gfxpayload = keep
linux /%INSTALL_DIR%/boot/x86_64/vmlinuz-linux archisobasedir = %INSTALL_DIR% archisodevice=UUID=${ARCHISO_UUID} cow_spacesize=4G copytoram=n
initrd /%INSTALL_DIR%/boot/intel-ucode.img /%INSTALL_DIR%/boot/amd-ucode.img /%INSTALL_DIR%/boot/x86_64/initramfs-linux.img
}
menuentry "Alci install medium with speakup screen reader (x86_64, UEFI)" --hotkey s --class arch --class gnu-linux --class gnu --class os --id 'alci-accessibility' {
set gfxpayload = keep
linux /%INSTALL_DIR%/boot/x86_64/vmlinuz-linux archisobasedir = %INSTALL_DIR% archisodevice=UUID=${ARCHISO_UUID} accessibility=on cow_spacesize=4G copytoram=n
initrd /%INSTALL_DIR%/boot/intel-ucode.img /%INSTALL_DIR%/boot/amd-ucode.img /%INSTALL_DIR%/boot/x86_64/initramfs-linux.img
}
if [ "${grub_platform}" = = "efi" ]; then
if [ "${grub_cpu}" = = "x86_64" ]; then
menuentry "Run Memtest86+ (RAM test)" --class memtest86 --class gnu --class tool {
set gfxpayload = 800x600,1024x768
linux /boot/memtest86+/memtest.efi
}
menuentry "UEFI Shell" {
insmod chain
chainloader /shellx64.efi
}
elif [ "${grub_cpu}" = = "i386" ]; then
menuentry "UEFI Shell" {
insmod chain
chainloader /shellia32.efi
}
fi
menuentry 'UEFI Firmware Settings' --id 'uefi-firmware' {
fwsetup
}
fi
menuentry "System restart" --class reboot --class restart {
echo "System rebooting..."
reboot
}
menuentry "System shutdown" --class shutdown --class poweroff {
echo "System shutting down..."
halt
}