set _hidden_timeout="3" if [ "${grub_platform}" == "efi" ]; then set default="Arch Linux Core Kernel EFISTUB" else set default="Arch Linux Core Kernel" fi set _kernel_params="rw ipv6.disable=1 loglevel=6 printk.time=y pcie_aspm=force i915.i915_enable_rc6=1 nouveau.nofbaccel=1" set _rootfstype="ext4" insmod part_gpt insmod part_msdos insmod fat insmod ext2 insmod progress set _uefisys_part_gpt_guid="f5e1ef99-752e-4041-855d-aca8a7cc0d03" set _uefisys_part_fs_uuid="1A38-7D84" set _boot_part_gpt_guid="21c21be7-e002-4c15-b14a-ac3c6cbf152f" set _boot_part_fs_uuid="0ec12acc-413e-41cd-b48f-6a34770a54c8" set _root_part_gpt_guid="6f44c56d-d5c2-41ca-8c54-873d8dc5e5e3" set _root_part_fs_uuid="99a33077-b303-4fd6-ae3f-a163ed8c590b" search --fs-uuid --no-floppy --set=_uefisys_part --hint-bios=hd0,gpt1 --hint-efi=hd0,gpt1 --hint-baremetal=ahci0,gpt1 "${_uefisys_part_fs_uuid}" search --fs-uuid --no-floppy --set=_arch64_boot --hint-bios=hd0,gpt4 --hint-efi=hd0,gpt4 --hint-baremetal=ahci0,gpt4 "${_boot_part_fs_uuid}" search --fs-uuid --no-floppy --set=_arch64_root --hint-bios=hd0,gpt8 --hint-efi=hd0,gpt8 --hint-baremetal=ahci0,gpt8 "${_root_part_fs_uuid}" if [ "${grub_platform}" == "efi" ]; then set _UEFI_ARCH="${grub_cpu}" if [ "${grub_cpu}" == "x86_64" ]; then set _SPEC_UEFI_ARCH="x64" fi set _kernel_params="${_kernel_params} add_efi_memmap" insmod efi_gop insmod efi_uga # insmod video_bochs # insmod video_cirrus fi if [ "${grub_platform}" == "pc" ]; then insmod vbe insmod vga # insmod video_bochs # insmod video_cirrus fi insmod font if [ -e "(${_arch64_root})/usr/share/grub/unicode.pf2" ]; then _fontfile="(${_arch64_root})/usr/share/grub/unicode.pf2" else if [ -e "(${_arch64_boot})/grub/fonts/unicode.pf2" ]; then _fontfile="(${_arch64_boot})/grub/fonts/unicode.pf2" fi fi if loadfont "${_fontfile}" ; then insmod gfxterm set gfxmode="1366x768x32;1024x768x32;auto" terminal_input console terminal_output gfxterm # set color_normal=light-blue/black # set color_highlight=light-cyan/blue # insmod png # insmod jpeg # insmod gfxmenu # background_image "(${_arch64_boot})/images/archlinux.png" set locale_dir="${prefix}/locale" set lang="en_US" # insmod gettext fi if sleep --verbose --interruptible "${_hidden_timeout}" ; then set timeout="0" fi set pager="1" # set debug="all" if [ "${grub_platform}" == "efi" ]; then menuentry "Arch Linux Core Kernel EFISTUB" { set gfxpayload="keep" set root="${_uefisys_part}" chainloader /EFI/arch/core/vmlinuz-arch-core.efi root=PARTUUID=${_root_part_gpt_guid} rootfstype=${_rootfstype} ${_kernel_params} systemd.unit=graphical.target initrd=/EFI/arch/core/initramfs-arch-core.img } menuentry "Arch Linux Core Kernel Fallback EFISTUB" { set gfxpayload="keep" set root="${_uefisys_part}" chainloader /EFI/arch/core/vmlinuz-arch-core.efi root=PARTUUID=${_root_part_gpt_guid} rootfstype=${_rootfstype} ${_kernel_params} systemd.unit=graphical.target initrd=/EFI/arch/core/initramfs-arch-core-fallback.img } menuentry "Arch Linux Mainline Kernel EFISTUB" { set gfxpayload="keep" set root="${_uefisys_part}" chainloader /EFI/arch/mainline/vmlinuz-arch-mainline.efi root=PARTUUID=${_root_part_gpt_guid} rootfstype=${_rootfstype} ${_kernel_params} systemd.unit=graphical.target initrd=/EFI/arch/mainline/initramfs-arch-mainline.img } menuentry "Arch Linux Mainline Kernel Fallback EFISTUB" { set gfxpayload="keep" set root="${_uefisys_part}" chainloader /EFI/arch/mainline/vmlinuz-arch-mainline.efi root=PARTUUID=${_root_part_gpt_guid} rootfstype=${_rootfstype} ${_kernel_params} systemd.unit=graphical.target initrd=/EFI/arch/mainline/initramfs-arch-mainline-fallback.img } menuentry "Arch Linux x86_64 Archboot EFISTUB" { set gfxpayload="keep" set root="${_uefisys_part}" chainloader /EFI/arch/archboot/vmlinuz-archboot.efi rw loglevel=7 efi_no_storage_paranoia add_efi_memmap initrd=/EFI/arch/archboot/initramfs-archboot.img } fi menuentry "Arch Linux Core Kernel" { set gfxpayload="keep" set root="${_arch64_boot}" linux /vmlinuz-linux root=PARTUUID=${_root_part_gpt_guid} rootfstype=${_rootfstype} ${_kernel_params} systemd.unit=graphical.target initrd /initramfs-linux.img } menuentry "Arch Linux Core Kernel Fallback" { set gfxpayload="keep" set root="${_arch64_boot}" linux /vmlinuz-linux root=PARTUUID=${_root_part_gpt_guid} rootfstype=${_rootfstype} ${_kernel_params} systemd.unit=graphical.target initrd /initramfs-linux-fallback.img } menuentry "Arch Linux Mainline Kernel" { set gfxpayload="keep" set root="${_arch64_boot}" linux /vmlinuz-linux-mainline root=PARTUUID=${_root_part_gpt_guid} rootfstype=${_rootfstype} ${_kernel_params} systemd.unit=graphical.target initrd /initramfs-linux-mainline.img } menuentry "Arch Linux Mainline Kernel Fallback" { set gfxpayload="keep" set root="${_arch64_boot}" linux /vmlinuz-linux-mainline root=PARTUUID=${_root_part_gpt_guid} rootfstype=${_rootfstype} ${_kernel_params} systemd.unit=graphical.target initrd /initramfs-linux-mainline-fallback.img } menuentry "Arch Linux x86_64 Archboot" { set gfxpayload="keep" set root="${_uefisys_part}" linux /EFI/arch/archboot/vmlinuz-archboot.efi rw loglevel=7 efi_no_storage_paranoia add_efi_memmap initrd /EFI/arch/archboot/initramfs-archboot.img } if [ "${grub_platform}" == "efi" ]; then menuentry "GRUB Normal" { set root="${_uefisys_part}" chainloader /EFI/grub/grubx64.efi } menuentry "GRUB Standalone" { set root="${_uefisys_part}" chainloader /EFI/grub/grubx64_standalone.efi } menuentry "Gummiboot" { set root="${_uefisys_part}" chainloader /EFI/gummiboot/gummibootx64.efi } menuentry "rEFInd" { set root="${_uefisys_part}" chainloader /EFI/refind/refind_x64.efi } menuentry "Syslinux UEFI" { set root="${_uefisys_part}" chainloader /EFI/syslinux/syslinux.efi } menuentry "ELILO" { set root="${_uefisys_part}" chainloader /EFI/elilo/elilox64.efi } menuentry "Microsoft Windows x86_64 UEFI-GPT" { set root="${_uefisys_part}" chainloader /EFI/Microsoft/Boot/bootmgfw.efi } menuentry "UEFI Shell ${_UEFI_ARCH} v2" { set root="${_uefisys_part}" chainloader /EFI/tools/shell${_SPEC_UEFI_ARCH}_v2.efi } menuentry "UEFI Shell ${_UEFI_ARCH} v1" { set root="${_uefisys_part}" chainloader /EFI/tools/shell${_SPEC_UEFI_ARCH}_v1.efi } fi if [ "${grub_platform}" == "pc" ]; then if [ -e "(${_arch64_boot})/Clover2k-X64.iso" ]; then menuentry "Boot Clover X64 EFI Boot ISO via Memdisk" { insmod linux16 set root="${_arch64_boot}" linux16 /memdisk ro nopass initrd16 /Clover2k-X64.iso } fi if [ -e "(${_arch64_boot})/Clover2k-IA32.iso" ]; then menuentry "Boot Clover IA32 EFI Boot ISO via Memdisk" { insmod linux16 set root="${_arch64_boot}" linux16 /memdisk ro nopass initrd16 /Clover2k-IA32.iso } fi menuentry "Boot Tianocore UDK DUET UEFI x86_64 - Partition" { search --fs-uuid --no-floppy --set=root --hint-bios=hd0,gpt3 --hint-efi=hd0,gpt3 --hint-baremetal=ahci0,gpt3 D109-8CBA chainloader +1 } if [ -e "(${_arch64_boot})/tianocore.img" ]; then menuentry "Boot Tianocore UDK DUET UEFI x86_64 - Memdisk" { insmod linux16 set root="${_arch64_boot}" linux16 /memdisk ro nopass initrd16 /tianocore.img } fi if [ -e "(${_arch64_boot})/memtest86+/memtest.bin" ]; then menuentry "Memory Tester (memtest86+)" { insmod linux16 set root="${_arch64_boot}" linux16 /memtest86+/memtest.bin } fi fi