diff options
author | David P <megver83@parabola.nu> | 2022-07-17 19:28:57 -0400 |
---|---|---|
committer | David P <megver83@parabola.nu> | 2022-07-17 19:28:57 -0400 |
commit | 4399eeda884f556bb9a129c3e43b8585275ed405 (patch) | |
tree | cea683f30a53e975513912f917b3eb914d427a4f | |
parent | 3e26a91c9dc5c211473a080a99aa5c9c17023095 (diff) |
sync with releng, use GRUB for x64 UEFI booting
Signed-off-by: David P <megver83@parabola.nu>
20 files changed, 160 insertions, 86 deletions
diff --git a/lxde-openrc/airootfs/etc/locale.conf b/lxde-openrc/airootfs/etc/locale.conf index 01ec548..f9c983c 100644 --- a/lxde-openrc/airootfs/etc/locale.conf +++ b/lxde-openrc/airootfs/etc/locale.conf @@ -1 +1 @@ -LANG=en_US.UTF-8 +LANG=C.UTF-8 diff --git a/lxde-openrc/airootfs/etc/pacman.d/hooks/40-locale-gen.hook b/lxde-openrc/airootfs/etc/pacman.d/hooks/40-locale-gen.hook deleted file mode 100644 index 82dd199..0000000 --- a/lxde-openrc/airootfs/etc/pacman.d/hooks/40-locale-gen.hook +++ /dev/null @@ -1,13 +0,0 @@ -# remove from airootfs! -[Trigger] -Operation = Install -Type = Package -Target = glibc - -[Action] -Description = Uncommenting en_US.UTF-8 locale and running locale-gen... -When = PostTransaction -Depends = glibc -Depends = sed -Depends = sh -Exec = /bin/sh -c "sed -i 's/#\(en_US\.UTF-8\)/\1/' /etc/locale.gen && locale-gen" diff --git a/lxde-openrc/efiboot/entries/01-parabolaiso-x86_64-linux-libre.conf b/lxde-openrc/efiboot/entries/01-parabolaiso-x86_64-linux-libre.conf deleted file mode 100644 index 7fec6be..0000000 --- a/lxde-openrc/efiboot/entries/01-parabolaiso-x86_64-linux-libre.conf +++ /dev/null @@ -1,5 +0,0 @@ -menuentry "Parabola GNU/Linux-libre install medium (x86_64, UEFI)" { - loader /%INSTALL_DIR%/boot/x86_64/vmlinuz-linux-libre - initrd /%INSTALL_DIR%/boot/x86_64/initramfs-linux-libre.img - options "parabolaisobasedir=%INSTALL_DIR% parabolaisolabel=%PARABOLAISO_LABEL%" -} diff --git a/lxde-openrc/efiboot/entries/02-parabolaiso-x86_64-speech-linux-libre.conf b/lxde-openrc/efiboot/entries/02-parabolaiso-x86_64-speech-linux-libre.conf deleted file mode 100644 index e6e8ab6..0000000 --- a/lxde-openrc/efiboot/entries/02-parabolaiso-x86_64-speech-linux-libre.conf +++ /dev/null @@ -1,5 +0,0 @@ -menuentry "Parabola GNU/Linux-libre install medium (x86_64, UEFI) with speech" { - loader /%INSTALL_DIR%/boot/x86_64/vmlinuz-linux-libre - initrd /%INSTALL_DIR%/boot/x86_64/initramfs-linux-libre.img - options "parabolaisobasedir=%INSTALL_DIR% parabolaisolabel=%PARABOLAISO_LABEL% accessibility=on" -} diff --git a/lxde-openrc/efiboot/entries/03-parabolaiso-x86_64-ram-linux-libre.conf b/lxde-openrc/efiboot/entries/03-parabolaiso-x86_64-ram-linux-libre.conf deleted file mode 100644 index 0c635af..0000000 --- a/lxde-openrc/efiboot/entries/03-parabolaiso-x86_64-ram-linux-libre.conf +++ /dev/null @@ -1,5 +0,0 @@ -menuentry "Parabola GNU/Linux-libre install medium (x86_64, UEFI, Copy to RAM)" { - loader /%INSTALL_DIR%/boot/x86_64/vmlinuz-linux-libre - initrd /%INSTALL_DIR%/boot/x86_64/initramfs-linux-libre.img - options "parabolaisobasedir=%INSTALL_DIR% parabolaisolabel=%PARABOLAISO_LABEL% copytoram" -} diff --git a/lxde-openrc/efiboot/entries/04-parabolaiso-x86_64-ram-speech-linux-libre.conf b/lxde-openrc/efiboot/entries/04-parabolaiso-x86_64-ram-speech-linux-libre.conf deleted file mode 100644 index f8b4ae3..0000000 --- a/lxde-openrc/efiboot/entries/04-parabolaiso-x86_64-ram-speech-linux-libre.conf +++ /dev/null @@ -1,5 +0,0 @@ -menuentry "Parabola GNU/Linux-libre install medium (x86_64, UEFI, Copy to RAM) with speech" { - loader /%INSTALL_DIR%/boot/x86_64/vmlinuz-linux-libre - initrd /%INSTALL_DIR%/boot/x86_64/initramfs-linux-libre.img - options "parabolaisobasedir=%INSTALL_DIR% parabolaisolabel=%PARABOLAISO_LABEL% copytoram accessibility=on" -} diff --git a/lxde-openrc/efiboot/refind.conf b/lxde-openrc/efiboot/refind.conf deleted file mode 100644 index 599ee49..0000000 --- a/lxde-openrc/efiboot/refind.conf +++ /dev/null @@ -1,8 +0,0 @@ -scanfor manual -showtools shell firmware reboot shutdown - -timeout 15 -include entries/01-parabolaiso-x86_64-linux-libre.conf -include entries/02-parabolaiso-x86_64-speech-linux-libre.conf -include entries/03-parabolaiso-x86_64-ram-linux-libre.conf -default_selection 1 diff --git a/lxde-openrc/grub/grub.cfg b/lxde-openrc/grub/grub.cfg new file mode 100644 index 0000000..c8c885e --- /dev/null +++ b/lxde-openrc/grub/grub.cfg @@ -0,0 +1,75 @@ +# 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" + terminal_input console + 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=parabola +timeout=15 +timeout_style=menu + +# GRUB init tune for accessibility +play 600 988 1 1319 4 + +# Menu entries + +menuentry "Parabola GNU/Linux-libre install medium (x86_64, UEFI)" --class arch --class gnu-linux --class gnu --class os --id 'parabola' { + set gfxpayload=keep + search --no-floppy --set=root --label %PARABOLAISO_LABEL% + linux /%INSTALL_DIR%/boot/x86_64/vmlinuz-linux-libre parabolaisobasedir=%INSTALL_DIR% parabolaisolabel=%PARABOLAISO_LABEL% + initrd /%INSTALL_DIR%/boot/x86_64/initramfs-linux-libre.img +} + +menuentry "Parabola GNU/Linux-libre install medium with speakup screen reader (x86_64, UEFI)" --hotkey s --class arch --class gnu-linux --class gnu --class os --id 'parabola-accessibility' { + set gfxpayload=keep + search --no-floppy --set=root --label %PARABOLAISO_LABEL% + linux /%INSTALL_DIR%/boot/x86_64/vmlinuz-linux-libre parabolaisobasedir=%INSTALL_DIR% parabolaisolabel=%PARABOLAISO_LABEL% accessibility=on + initrd /%INSTALL_DIR%/boot/x86_64/initramfs-linux-libre.img +} + +if [ "${grub_platform}" == "efi" ]; then + if [ "${grub_cpu}" == "x86_64" ]; then + menuentry "UEFI Shell" { + insmod chain + search --no-floppy --set=root --label %PARABOLAISO_LABEL% + chainloader /shellx64.efi + } + elif [ "${grub_cpu}" == "i386" ]; then + menuentry "UEFI Shell" { + insmod chain + search --no-floppy --set=root --label %PARABOLAISO_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 +} diff --git a/lxde-openrc/packages.both b/lxde-openrc/packages.both index 91a3c22..f3ed95c 100644 --- a/lxde-openrc/packages.both +++ b/lxde-openrc/packages.both @@ -34,6 +34,7 @@ grml-zsh-config grub hdparm-openrc hyperv +inetutils irssi iw iwd diff --git a/lxde-openrc/profiledef.sh b/lxde-openrc/profiledef.sh index 632a00c..428194e 100644 --- a/lxde-openrc/profiledef.sh +++ b/lxde-openrc/profiledef.sh @@ -12,7 +12,9 @@ iso_application="Parabola GNU/Linux-libre Live/Rescue CD" iso_version="$(date +%Y.%m.%d)" install_dir="parabola" buildmodes=('iso') -bootmodes=('bios.syslinux.mbr' 'bios.syslinux.eltorito' 'uefi-x64.refind.esp' 'uefi-x64.refind.eltorito') +bootmodes=('bios.syslinux.mbr' 'bios.syslinux.eltorito' + 'uefi-ia32.grub.esp' 'uefi-x64.grub.esp' + 'uefi-ia32.grub.eltorito' 'uefi-x64.grub.eltorito') arch="dual" pacman_conf="pacman.conf" airootfs_image_type="squashfs" diff --git a/releng-openrc/airootfs/etc/locale.conf b/releng-openrc/airootfs/etc/locale.conf index 01ec548..f9c983c 100644 --- a/releng-openrc/airootfs/etc/locale.conf +++ b/releng-openrc/airootfs/etc/locale.conf @@ -1 +1 @@ -LANG=en_US.UTF-8 +LANG=C.UTF-8 diff --git a/releng-openrc/airootfs/etc/pacman.d/hooks/40-locale-gen.hook b/releng-openrc/airootfs/etc/pacman.d/hooks/40-locale-gen.hook deleted file mode 100644 index 82dd199..0000000 --- a/releng-openrc/airootfs/etc/pacman.d/hooks/40-locale-gen.hook +++ /dev/null @@ -1,13 +0,0 @@ -# remove from airootfs! -[Trigger] -Operation = Install -Type = Package -Target = glibc - -[Action] -Description = Uncommenting en_US.UTF-8 locale and running locale-gen... -When = PostTransaction -Depends = glibc -Depends = sed -Depends = sh -Exec = /bin/sh -c "sed -i 's/#\(en_US\.UTF-8\)/\1/' /etc/locale.gen && locale-gen" diff --git a/releng-openrc/efiboot/entries/01-parabolaiso-x86_64-linux-libre.conf b/releng-openrc/efiboot/entries/01-parabolaiso-x86_64-linux-libre.conf deleted file mode 100644 index 7fec6be..0000000 --- a/releng-openrc/efiboot/entries/01-parabolaiso-x86_64-linux-libre.conf +++ /dev/null @@ -1,5 +0,0 @@ -menuentry "Parabola GNU/Linux-libre install medium (x86_64, UEFI)" { - loader /%INSTALL_DIR%/boot/x86_64/vmlinuz-linux-libre - initrd /%INSTALL_DIR%/boot/x86_64/initramfs-linux-libre.img - options "parabolaisobasedir=%INSTALL_DIR% parabolaisolabel=%PARABOLAISO_LABEL%" -} diff --git a/releng-openrc/efiboot/entries/02-parabolaiso-x86_64-speech-linux-libre.conf b/releng-openrc/efiboot/entries/02-parabolaiso-x86_64-speech-linux-libre.conf deleted file mode 100644 index e6e8ab6..0000000 --- a/releng-openrc/efiboot/entries/02-parabolaiso-x86_64-speech-linux-libre.conf +++ /dev/null @@ -1,5 +0,0 @@ -menuentry "Parabola GNU/Linux-libre install medium (x86_64, UEFI) with speech" { - loader /%INSTALL_DIR%/boot/x86_64/vmlinuz-linux-libre - initrd /%INSTALL_DIR%/boot/x86_64/initramfs-linux-libre.img - options "parabolaisobasedir=%INSTALL_DIR% parabolaisolabel=%PARABOLAISO_LABEL% accessibility=on" -} diff --git a/releng-openrc/efiboot/entries/03-parabolaiso-x86_64-ram-linux-libre.conf b/releng-openrc/efiboot/entries/03-parabolaiso-x86_64-ram-linux-libre.conf deleted file mode 100644 index 0c635af..0000000 --- a/releng-openrc/efiboot/entries/03-parabolaiso-x86_64-ram-linux-libre.conf +++ /dev/null @@ -1,5 +0,0 @@ -menuentry "Parabola GNU/Linux-libre install medium (x86_64, UEFI, Copy to RAM)" { - loader /%INSTALL_DIR%/boot/x86_64/vmlinuz-linux-libre - initrd /%INSTALL_DIR%/boot/x86_64/initramfs-linux-libre.img - options "parabolaisobasedir=%INSTALL_DIR% parabolaisolabel=%PARABOLAISO_LABEL% copytoram" -} diff --git a/releng-openrc/efiboot/entries/04-parabolaiso-x86_64-ram-speech-linux-libre.conf b/releng-openrc/efiboot/entries/04-parabolaiso-x86_64-ram-speech-linux-libre.conf deleted file mode 100644 index f8b4ae3..0000000 --- a/releng-openrc/efiboot/entries/04-parabolaiso-x86_64-ram-speech-linux-libre.conf +++ /dev/null @@ -1,5 +0,0 @@ -menuentry "Parabola GNU/Linux-libre install medium (x86_64, UEFI, Copy to RAM) with speech" { - loader /%INSTALL_DIR%/boot/x86_64/vmlinuz-linux-libre - initrd /%INSTALL_DIR%/boot/x86_64/initramfs-linux-libre.img - options "parabolaisobasedir=%INSTALL_DIR% parabolaisolabel=%PARABOLAISO_LABEL% copytoram accessibility=on" -} diff --git a/releng-openrc/efiboot/refind.conf b/releng-openrc/efiboot/refind.conf deleted file mode 100644 index 599ee49..0000000 --- a/releng-openrc/efiboot/refind.conf +++ /dev/null @@ -1,8 +0,0 @@ -scanfor manual -showtools shell firmware reboot shutdown - -timeout 15 -include entries/01-parabolaiso-x86_64-linux-libre.conf -include entries/02-parabolaiso-x86_64-speech-linux-libre.conf -include entries/03-parabolaiso-x86_64-ram-linux-libre.conf -default_selection 1 diff --git a/releng-openrc/grub/grub.cfg b/releng-openrc/grub/grub.cfg new file mode 100644 index 0000000..c8c885e --- /dev/null +++ b/releng-openrc/grub/grub.cfg @@ -0,0 +1,75 @@ +# 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" + terminal_input console + 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=parabola +timeout=15 +timeout_style=menu + +# GRUB init tune for accessibility +play 600 988 1 1319 4 + +# Menu entries + +menuentry "Parabola GNU/Linux-libre install medium (x86_64, UEFI)" --class arch --class gnu-linux --class gnu --class os --id 'parabola' { + set gfxpayload=keep + search --no-floppy --set=root --label %PARABOLAISO_LABEL% + linux /%INSTALL_DIR%/boot/x86_64/vmlinuz-linux-libre parabolaisobasedir=%INSTALL_DIR% parabolaisolabel=%PARABOLAISO_LABEL% + initrd /%INSTALL_DIR%/boot/x86_64/initramfs-linux-libre.img +} + +menuentry "Parabola GNU/Linux-libre install medium with speakup screen reader (x86_64, UEFI)" --hotkey s --class arch --class gnu-linux --class gnu --class os --id 'parabola-accessibility' { + set gfxpayload=keep + search --no-floppy --set=root --label %PARABOLAISO_LABEL% + linux /%INSTALL_DIR%/boot/x86_64/vmlinuz-linux-libre parabolaisobasedir=%INSTALL_DIR% parabolaisolabel=%PARABOLAISO_LABEL% accessibility=on + initrd /%INSTALL_DIR%/boot/x86_64/initramfs-linux-libre.img +} + +if [ "${grub_platform}" == "efi" ]; then + if [ "${grub_cpu}" == "x86_64" ]; then + menuentry "UEFI Shell" { + insmod chain + search --no-floppy --set=root --label %PARABOLAISO_LABEL% + chainloader /shellx64.efi + } + elif [ "${grub_cpu}" == "i386" ]; then + menuentry "UEFI Shell" { + insmod chain + search --no-floppy --set=root --label %PARABOLAISO_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 +} diff --git a/releng-openrc/packages.both b/releng-openrc/packages.both index d9b6ca8..4a3924e 100644 --- a/releng-openrc/packages.both +++ b/releng-openrc/packages.both @@ -33,6 +33,7 @@ grml-zsh-config grub hdparm-openrc hyperv +inetutils irssi iw iwd diff --git a/releng-openrc/profiledef.sh b/releng-openrc/profiledef.sh index fe657de..5c14e32 100644 --- a/releng-openrc/profiledef.sh +++ b/releng-openrc/profiledef.sh @@ -8,7 +8,9 @@ iso_application="Parabola GNU/Linux-libre Live/Rescue CD" iso_version="$(date +%Y.%m.%d)" install_dir="parabola" buildmodes=('iso') -bootmodes=('bios.syslinux.mbr' 'bios.syslinux.eltorito' 'uefi-x64.refind.esp' 'uefi-x64.refind.eltorito') +bootmodes=('bios.syslinux.mbr' 'bios.syslinux.eltorito' + 'uefi-ia32.grub.esp' 'uefi-x64.grub.esp' + 'uefi-ia32.grub.eltorito' 'uefi-x64.grub.eltorito') arch="dual" pacman_conf="pacman.conf" airootfs_image_type="squashfs" |