Open Conan-Kudo opened 10 months ago
cc: @davide125, @davdunc, @DaanDeMeyer, @kraxel
I don't think kiwi should generate UKIs. Either the distro provides UKIs, then just use them. Or use traditional kernel + initrd. Everything else is asking for trouble when it comes to kernel updates.
Supporting UKIs essentially needs: (a) copying the UKI to the ESP, and (b) generating BOOT.CSV.
See https://pagure.io/fork/kraxel/fedora-kiwi-descriptions/blob/kraxel/f/uki-setup.sh
Problem description
As part of the effort to support UKIs in Fedora Cloud, we need to be able to create images that either generate UKIs or use pre-generated UKIs to boot the system (UEFI->shim->UKI or UEFI->UKI).
I suspect the way to solve this would be to add a
uki
"bootloader" which would force UEFI only mode and do the minimal effort required to configure the image to boot. We'd want to detect if there's already a UKI built as/boot/efi/EFI/*/vmlinuz-$(uname -r).efi
to use or/lib/modules/$(uname -r)/*.efi
to copy and install. If one doesn't exist, we should usedracut --uefi
to generate one.An example of a
dracut --uefi
call (ripped from the Fedorakernel
package that produceskernel-virt-uki
):Sample dracut uki config:
Unlike with the shim+grub situation, we will want a way to force generating UKIs because a different cmdline or module bundle may be desired, since there's no way to pass kernel cmdlines from UEFI to boot the OS.
OS and Software information