# 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 if loadfont "${prefix}/fonts/unicode.pf2" ; then insmod all_video set gfxmode="auto" terminal_input console terminal_output console fi # Enable serial console insmod serial insmod usbserial_common insmod usbserial_ftdi insmod usbserial_pl2303 insmod usbserial_usbdebug if serial --unit=0 --speed=115200; then terminal_input --append serial terminal_output --append serial fi # Search for the ISO volume if [ -z "${PARABOLAISO_UUID}" ]; then if [ -z "${PARABOLAISO_HINT}" ]; then regexp --set=1:PARABOLAISO_HINT '^\(([^)]+)\)' "${cmdpath}" fi search --no-floppy --set=root --file '%PARABOLAISO_SEARCH_FILENAME%' --hint "${PARABOLAISO_HINT}" probe --set PARABOLAISO_UUID --fs-uuid "${root}" fi # Get a human readable platform identifier if [ "${grub_platform}" == 'efi' ]; then parabolaiso_platform='UEFI' if [ "${grub_cpu}" == 'x86_64' ]; then parabolaiso_platform="x64 ${parabolaiso_platform}" elif [ "${grub_cpu}" == 'i386' ]; then parabolaiso_platform="IA32 ${parabolaiso_platform}" else parabolaiso_platform="${grub_cpu} ${parabolaiso_platform}" fi elif [ "${grub_platform}" == 'pc' ]; then parabolaiso_platform='BIOS' else parabolaiso_platform="${grub_cpu} ${grub_platform}" fi # Set default menu entry default=parabola timeout=15 timeout_style=menu # Menu entries menuentry "Parabola GNU/Linux-libre (%ARCH%, ${parabolaiso_platform})" --class arch --class gnu-linux --class gnu --class os --id 'parabola' { set gfxpayload=keep linux /%INSTALL_DIR%/boot/%ARCH%/vmlinuz-linux-libre parabolaisobasedir=%INSTALL_DIR% parabolaisodevice=UUID=${PARABOLAISO_UUID} initrd /%INSTALL_DIR%/boot/%ARCH%/initramfs-linux-libre.img } if [ "${grub_platform}" == 'efi' -a "${grub_cpu}" == 'x86_64' -a -f '/boot/memtest86+/memtest.efi' ]; then menuentry 'Run Memtest86+ (RAM test)' --class memtest86 --class gnu --class tool { set gfxpayload=800x600,1024x768 linux /boot/memtest86+/memtest.efi } fi if [ "${grub_platform}" == 'pc' -a -f '/boot/memtest86+/memtest' ]; then menuentry 'Run Memtest86+ (RAM test)' --class memtest86 --class gnu --class tool { set gfxpayload=800x600,1024x768 linux /boot/memtest86+/memtest } fi if [ "${grub_platform}" == 'efi' ]; then if [ "${grub_cpu}" == 'x86_64' -a -f '/shellx64.efi' ]; then menuentry 'UEFI Shell' { chainloader /shellx64.efi } elif [ "${grub_cpu}" == "i386" -a -f '/shellia32.efi' ]; then menuentry 'UEFI Shell' { chainloader /shellia32.efi } fi menuentry 'UEFI Firmware Settings' --id 'uefi-firmware' { fwsetup } fi menuentry 'System shutdown' --class shutdown --class poweroff { echo 'System shutting down...' halt } menuentry 'System restart' --class reboot --class restart { echo 'System rebooting...' reboot }