add EFISTUB boot option to GRUB

This commit is contained in:
Tobias Powalowski 2022-05-15 10:10:52 +02:00
parent 6e4ee6df8d
commit f2c73ac37b
8 changed files with 62 additions and 0 deletions

View file

@ -138,6 +138,30 @@ _prepare_background() {
cp ${_GRUB_BACKGROUND} "${_ISODIR}/boot/grub/archboot-background.png"
}
_prepare_systemd-boot_X64() {
echo "Prepare X64 systemd-boot ..."
[[ -d ${_ISODIR}/boot/systemd-boot ]] || mkdir -p ${_ISODIR}/boot/systemd-boot
[[ -d ${_ISODIR}/boot/systemd-boot ]] || mkdir -p ${_ISODIR}/boot/loader/entries
cp /usr/lib/systemd/boot/efi/systemd-bootx64.efi ${_ISODIR}/boot/systemd-boot/
cp /usr/share/archboot/systemd-boot/boot/loader/loader-x64.conf \
${_ISODIR}/boot/systemd-boot/loader-x64.conf
}
_prepare_systemd-boot_AA64() {
echo "Prepare AA64 systemd-boot ..."
[[ -d ${_ISODIR}/boot/systemd-boot ]] || mkdir -p ${_ISODIR}/boot/systemd-boot
[[ -d ${_ISODIR}/boot/systemd-boot ]] || mkdir -p ${_ISODIR}/boot/loader/entries
cp /usr/lib/systemd/boot/efi/systemd-bootaa64.efi ${_ISODIR}/boot/systemd-boot/
cp /usr/share/archboot/systemd-boot/boot/loader/loader-aa64.conf \
${_ISODIR}/boot/systemd-boot/loader-aa64.conf
}
_prepare_systemd-boot_entry() {
echo "Prepare systemd-boot entry ..."
cp /usr/share/archboot/systemd-boot/boot/loader/entries/archboot-${1}.conf \
${_ISODIR}/boot/systemd-boot/entries/archboot-${1}.conf
}
_reproducibility() {
# Reproducibility: set all timestamps to 0
# from /usr/bin/mkinitcpio

View file

@ -100,6 +100,11 @@ if [ ${grub_platform} == "efi" ]; then
_initrd_x86_64
}
menuentry "Arch Linux x86_64 Archboot - EFISTUB" {
_menu_running
chainloader /boot/systemd-boot/systemd-bootx64.efi
}
submenu "UEFI Tools" {
_secure_boot_tools
_efi_shell
@ -114,6 +119,11 @@ if [ ${grub_platform} == "efi" ]; then
_initrd_aarch64
}
menuentry "Arch Linux AA64 Archboot - EFISTUB" {
_menu_running
chainloader /boot/systemd-boot/systemd-bootaa64.efi
}
submenu "UEFI Tools" {
_secure_boot_tools
}

View file

@ -0,0 +1,6 @@
title Arch Linux AA64 Archboot - EFISTUB
linux /vmlinuz_aarch64
initrd /amd-ucode.img
initrd /initramfs_aarch64-0.img
initrd /initramfs_aarch64-1.img
options rootfstype=ramfs nr_cpus=1 console=ttyAMA0,115200 console=tty0 loglevel=4

View file

@ -0,0 +1,5 @@
title Arch Linux AA64 Archboot - EFISTUB
linux /vmlinuz_aarch64
initrd /amd-ucode.img
initrd /initramfs_aarch64.img
options rootfstype=ramfs nr_cpus=1 console=ttyAMA0,115200 console=tty0 loglevel=4

View file

@ -0,0 +1,7 @@
title Arch Linux x86_64 Archboot - EFISTUB
linux /vmlinuz_x86_64
initrd /amd-ucode.img
initrd /intel-ucode.img
initrd /initramfs_x86_64-0.img
initrd /initramfs_x86_64-1.img
options rootfstype=ramfs console=ttyS0,115200 console=tty0

View file

@ -0,0 +1,6 @@
title Arch Linux x86_64 Archboot - EFISTUB
linux /vmlinuz_x86_64
initrd /amd-ucode.img
initrd /intel-ucode.img
initrd /initramfs_x86_64.img
options rootfstype=ramfs console=ttyS0,115200 console=tty0

View file

@ -0,0 +1,2 @@
timeout 10
default archboot-aa64

View file

@ -0,0 +1,2 @@
timeout 10
default archboot-x64