Change releng bootloader from GRUB to systemd-boot
While using GRUB as the UEFI boot loader has reduced the size of the ISO (#63 (closed)), it has brought nothing but pain otherwise:
- We cannot use
gfxterm
since it is not visible on some hardware (#212 (closed)). - GRUB has a a strange and nonsensical limitation where the EFI binary can be built with either support for shim or custom Secure Boot key support, but not both. This means you cannot repack the ISO to use shim + MOK since we currently use
--disable-shim-lock
to provide support for setups with custom keys. - GRUB's EFI binary needs to be built with
grub-mkstandalone
instead of there being a ready made EFI binary in the package. This requires having grub installed on the host system which affects reproducibility (#35 (closed)).
File system transposition for UEFI systems can now be achieved using the archisosearchuuid=
boot parameter (archlinux/mkinitcpio/mkinitcpio-archiso!48 (merged)), so we are not bound to GRUB anymore.
This will increase the size of the ISO since systemd-boot cannot boot files from other volumes efiboot.img
). But since we do not claim to have an ISO that fits a CD (#144 (closed)), this should not be a too big of a concern... for now.