From 986e450e1ab476e35012370d97b7e4526e113d88 Mon Sep 17 00:00:00 2001 From: tranch Date: Fri, 24 Jul 2026 09:17:07 +0800 Subject: Fix live installer GRUB EFI fallback Install the full EFI GRUB package and create the fallback directory. --- installer/build.sh | 2 ++ 1 file changed, 2 insertions(+) (limited to 'installer/build.sh') diff --git a/installer/build.sh b/installer/build.sh index 921e628..6f1561f 100755 --- a/installer/build.sh +++ b/installer/build.sh @@ -19,6 +19,7 @@ dnf --setopt=excludepkgs= install -y \ libblockdev-lvm \ dracut-live \ livesys-scripts \ + grub2-efi-x64 \ grub2-efi-x64-cdboot # Apply the same AeroCore overlay to the live session where possible. @@ -62,6 +63,7 @@ if compgen -G '/usr/lib/efi/*/*/EFI' >/dev/null; then fi # bootc-image-builder needs the Fedora live ISO fallback EFI loader. +mkdir -p /boot/efi/EFI/BOOT cp -v /boot/efi/EFI/fedora/grubx64.efi /boot/efi/EFI/BOOT/fbx64.efi systemd-firstboot --timezone UTC -- cgit v1.2.3 From 2de184fb8db64a900ed2e64e292fd7b77f3deae4 Mon Sep 17 00:00:00 2001 From: tranch Date: Fri, 24 Jul 2026 09:39:33 +0800 Subject: Find live installer EFI files robustly Avoid assuming the Fedora EFI directory layout when creating fbx64.efi. --- installer/build.sh | 14 +++++++++++--- 1 file changed, 11 insertions(+), 3 deletions(-) (limited to 'installer/build.sh') diff --git a/installer/build.sh b/installer/build.sh index 6f1561f..2f8a26b 100755 --- a/installer/build.sh +++ b/installer/build.sh @@ -58,13 +58,21 @@ sed -i 's/^livesys_session=.*/livesys_session=kde/' /etc/sysconfig/livesys systemctl enable livesys.service livesys-late.service mkdir -p /boot/efi -if compgen -G '/usr/lib/efi/*/*/EFI' >/dev/null; then - cp -a /usr/lib/efi/*/*/EFI /boot/efi/ +efi_dir="$(find /usr/lib/efi -type d -name EFI -print -quit 2>/dev/null || true)" +if [[ -n "${efi_dir}" ]]; then + cp -a "${efi_dir}" /boot/efi/ fi # bootc-image-builder needs the Fedora live ISO fallback EFI loader. +grubx64="$(find /usr/lib/efi /boot/efi -type f \ + -path '*/EFI/fedora/grubx64.efi' -print -quit 2>/dev/null || true)" +if [[ -z "${grubx64}" ]]; then + echo "grubx64.efi was not found in the installed EFI tree" >&2 + find /usr/lib/efi /boot/efi -type f -path '*/EFI/*' -print >&2 || true + exit 1 +fi mkdir -p /boot/efi/EFI/BOOT -cp -v /boot/efi/EFI/fedora/grubx64.efi /boot/efi/EFI/BOOT/fbx64.efi +cp -v "${grubx64}" /boot/efi/EFI/BOOT/fbx64.efi systemd-firstboot --timezone UTC dnf clean all -- cgit v1.2.3 From e41af95f56d4cbfee68081f82dd329ee68486267 Mon Sep 17 00:00:00 2001 From: tranch Date: Fri, 24 Jul 2026 09:44:48 +0800 Subject: Restore EFI GRUB files in Kinoite build Reinstall EFI packages so missing payload files are materialized. --- installer/build.sh | 6 ++++++ 1 file changed, 6 insertions(+) (limited to 'installer/build.sh') diff --git a/installer/build.sh b/installer/build.sh index 2f8a26b..efce782 100755 --- a/installer/build.sh +++ b/installer/build.sh @@ -22,6 +22,12 @@ dnf --setopt=excludepkgs= install -y \ grub2-efi-x64 \ grub2-efi-x64-cdboot +# Kinoite can carry the EFI packages in the RPM database without their files +# materialized in the container filesystem. Restore the files for the ISO. +dnf --setopt=excludepkgs= reinstall -y \ + grub2-efi-x64 \ + grub2-efi-x64-cdboot + # Apply the same AeroCore overlay to the live session where possible. if [[ -d /src/system_files ]]; then cp -a /src/system_files/. / -- cgit v1.2.3