Send patches - preferably formatted by git format-patch - to patches at archlinux32 dot org.
summaryrefslogtreecommitdiff
path: root/configs/releng/grub/grub.cfg
diff options
context:
space:
mode:
Diffstat (limited to 'configs/releng/grub/grub.cfg')
-rw-r--r--configs/releng/grub/grub.cfg67
1 files changed, 48 insertions, 19 deletions
diff --git a/configs/releng/grub/grub.cfg b/configs/releng/grub/grub.cfg
index 4a707b9..43fad0e 100644
--- a/configs/releng/grub/grub.cfg
+++ b/configs/releng/grub/grub.cfg
@@ -1,12 +1,12 @@
+# Load partition table and file system modules
insmod part_gpt
insmod part_msdos
insmod fat
insmod iso9660
+# Use graphics-mode output
insmod all_video
-
insmod font
-
if loadfont "${prefix}/fonts/unicode.pf2" ; then
insmod gfxterm
set gfxmode="auto"
@@ -14,33 +14,62 @@ if loadfont "${prefix}/fonts/unicode.pf2" ; then
terminal_output gfxterm
fi
+# Enable serial console
+if serial --unit=0 --speed=115200; then
+ terminal_input --append serial
+ terminal_output --append serial
+fi
+
+# Set default menu entry
+default=archlinux
+timeout=15
+timeout_style=menu
+
# GRUB init tune for accessibility
-#
-# Morse translation table:
-# "." is "500 1 300 1"
-# "-" is "600 3 300 1"
-# " " is "100 2"
-# "/" is "100 5"
-#
-# Message: "s for blind"
-play 500 500 1 300 1 500 1 300 1 500 1 300 1 100 5 500 1 300 1 500 1 300 1 100 2 500 1 300 1 500 1 300 1 600 3 300 1 500 1 300 1 100 5 600 3 300 1 500 1 300 1 500 1 300 1 500 1 300 1 100 2 500 1 300 1 600 3 300 1 500 1 300 1 500 1 300 1 100 2 500 1 300 1 500 1 300 1 100 2 500 1 300 1 500 1 300 1 100 2 600 3 300 1 500 1 300 1 100 2 600 3 300 1 500 1 300 1 500 1 300 1
-
-menuentry "Arch Linux install medium (x86_64, UEFI)" {
+play 600 988 1 1319 4
+
+# Menu entries
+
+menuentry "Arch Linux install medium (x86_64, UEFI)" --class arch --class gnu-linux --class gnu --class os --id 'archlinux' {
set gfxpayload=keep
search --no-floppy --set=root --label %ARCHISO_LABEL%
- linux /%INSTALL_DIR%/boot/x86_64/vmlinuz-linux archisobasedir=%INSTALL_DIR% archisolabel=%ARCHISO_LABEL%
+ linux /%INSTALL_DIR%/boot/x86_64/vmlinuz-linux archisobasedir=%INSTALL_DIR% archisolabel=%ARCHISO_LABEL%
initrd /%INSTALL_DIR%/boot/intel-ucode.img /%INSTALL_DIR%/boot/amd-ucode.img /%INSTALL_DIR%/boot/x86_64/initramfs-linux.img
}
-menuentry "Arch Linux install medium with speakup screen reader (x86_64, UEFI)" --hotkey=s {
+menuentry "Arch Linux install medium with speakup screen reader (x86_64, UEFI)" --hotkey s --class arch --class gnu-linux --class gnu --class os --id 'archlinux-accessibility' {
set gfxpayload=keep
search --no-floppy --set=root --label %ARCHISO_LABEL%
linux /%INSTALL_DIR%/boot/x86_64/vmlinuz-linux archisobasedir=%INSTALL_DIR% archisolabel=%ARCHISO_LABEL% accessibility=on
initrd /%INSTALL_DIR%/boot/intel-ucode.img /%INSTALL_DIR%/boot/amd-ucode.img /%INSTALL_DIR%/boot/x86_64/initramfs-linux.img
}
-menuentry "UEFI Shell" {
- insmod chain
- search --no-floppy --set=root --label %ARCHISO_LABEL%
- chainloader /shellia32.efi
+if [ "${grub_platform}" == "efi" ]; then
+ if [ "${grub_cpu}" == "x86_64" ]; then
+ menuentry "UEFI Shell" {
+ insmod chain
+ search --no-floppy --set=root --label %ARCHISO_LABEL%
+ chainloader /shellx64.efi
+ }
+ elif [ "${grub_cpu}" == "i386" ]; then
+ menuentry "UEFI Shell" {
+ insmod chain
+ search --no-floppy --set=root --label %ARCHISO_LABEL%
+ 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
}