changelog shortlog graph tags branches changeset files revisions annotate raw help

Mercurial > infra > box / grub/grub.cfg

changeset 1: 862c7d765472
author: Richard Westhaver <ellis@rwest.io>
date: Fri, 31 May 2024 16:44:48 -0400
permissions: -rw-r--r--
description: baseline init
1 # Load partition table and file system modules
2 insmod part_gpt
3 insmod part_msdos
4 insmod fat
5 insmod iso9660
6 insmod ntfs
7 insmod ntfscomp
8 insmod exfat
9 insmod udf
10 
11 # Use graphics-mode output
12 if loadfont "${prefix}/fonts/unicode.pf2" ; then
13  insmod all_video
14  set gfxmode="auto"
15  terminal_input console
16  terminal_output console
17 fi
18 
19 # Enable serial console
20 insmod serial
21 insmod usbserial_common
22 insmod usbserial_ftdi
23 insmod usbserial_pl2303
24 insmod usbserial_usbdebug
25 if serial --unit=0 --speed=115200; then
26  terminal_input --append serial
27  terminal_output --append serial
28 fi
29 
30 # Get a human readable platform identifier
31 if [ "${grub_platform}" == 'efi' ]; then
32  archiso_platform='UEFI'
33  if [ "${grub_cpu}" == 'x86_64' ]; then
34  archiso_platform="x64 ${archiso_platform}"
35  elif [ "${grub_cpu}" == 'i386' ]; then
36  archiso_platform="IA32 ${archiso_platform}"
37  else
38  archiso_platform="${grub_cpu} ${archiso_platform}"
39  fi
40 elif [ "${grub_platform}" == 'pc' ]; then
41  archiso_platform='BIOS'
42 else
43  archiso_platform="${grub_cpu} ${grub_platform}"
44 fi
45 
46 # Set default menu entry
47 default=archlinux
48 timeout=15
49 timeout_style=menu
50 
51 
52 # Menu entries
53 
54 menuentry "Arch Linux (%ARCH%, ${archiso_platform})" --class arch --class gnu-linux --class gnu --class os --id 'archlinux' {
55  set gfxpayload=keep
56  linux /%INSTALL_DIR%/boot/%ARCH%/vmlinuz-linux archisobasedir=%INSTALL_DIR% archisosearchuuid=%ARCHISO_UUID%
57  initrd /%INSTALL_DIR%/boot/%ARCH%/initramfs-linux.img
58 }
59 
60 if [ "${grub_platform}" == 'efi' -a "${grub_cpu}" == 'x86_64' -a -f '/boot/memtest86+/memtest.efi' ]; then
61  menuentry 'Run Memtest86+ (RAM test)' --class memtest86 --class gnu --class tool {
62  set gfxpayload=800x600,1024x768
63  linux /boot/memtest86+/memtest.efi
64  }
65 fi
66 if [ "${grub_platform}" == 'pc' -a -f '/boot/memtest86+/memtest' ]; then
67  menuentry 'Run Memtest86+ (RAM test)' --class memtest86 --class gnu --class tool {
68  set gfxpayload=800x600,1024x768
69  linux /boot/memtest86+/memtest
70  }
71 fi
72 if [ "${grub_platform}" == 'efi' ]; then
73  if [ "${grub_cpu}" == 'x86_64' -a -f '/shellx64.efi' ]; then
74  menuentry 'UEFI Shell' {
75  chainloader /shellx64.efi
76  }
77  elif [ "${grub_cpu}" == "i386" -a -f '/shellia32.efi' ]; then
78  menuentry 'UEFI Shell' {
79  chainloader /shellia32.efi
80  }
81  fi
82 
83  menuentry 'UEFI Firmware Settings' --id 'uefi-firmware' {
84  fwsetup
85  }
86 fi
87 
88 menuentry 'System shutdown' --class shutdown --class poweroff {
89  echo 'System shutting down...'
90  halt
91 }
92 
93 menuentry 'System restart' --class reboot --class restart {
94  echo 'System rebooting...'
95  reboot
96 }