Fix building qemuamd64-sid

Message ID 20260224120117.1135921-1-ubely@ilbers.de
State New
Headers show
Series Fix building qemuamd64-sid | expand

Commit Message

Uladzimir Bely Feb. 24, 2026, 12:01 p.m. UTC
In sid, package grub-efi-amd64-bin deprecates "efi_uga.mod" so
exclude it for sid to fix wic image creation.

Fixes:

ERROR: _exec_cmd: grub-mkimage -p /EFI/BOOT -O x86_64-efi -o /tmp/isar-image-base-debian-sid-qemuamd64.wic/tmp.wic.47tg4qtv/hdd/boot/EFI/BOOT/bootx64.efi part_gpt part_msdos ntfs ntfscomp fat ext2 normal chain boot configfile linux search efi_gop font gfxterm gfxmenu terminal minicmd test loadenv echo help reboot serial terminfo iso9660 loopback tar memdisk ls search_fs_uuid udf btrfs xfs lvm reiserfs regexp multiboot efi_uga iorw ata  returned '1' instead of 0
output: grub-mkimage: error: cannot open `/usr/lib/grub/x86_64-efi/efi_uga.mod': No such file or directory.
---
 .../scripts/lib/wic/plugins/source/bootimg-efi-isar.py | 10 ++++++++--
 1 file changed, 8 insertions(+), 2 deletions(-)

Patch

diff --git a/meta/scripts/lib/wic/plugins/source/bootimg-efi-isar.py b/meta/scripts/lib/wic/plugins/source/bootimg-efi-isar.py
index ed3bed88..6bc78d42 100644
--- a/meta/scripts/lib/wic/plugins/source/bootimg-efi-isar.py
+++ b/meta/scripts/lib/wic/plugins/source/bootimg-efi-isar.py
@@ -446,11 +446,17 @@  class BootimgEFIPlugin(SourcePlugin):
                 if not distro_arch:
                     raise WicError("Couldn't find target architecture")
 
+                distro = get_bitbake_var("DISTRO")
+                if not distro:
+                    raise WicError("Couldn't find target distro")
+
                 if distro_arch == "amd64":
                     grub_target = 'x86_64-efi'
                     grub_image = "bootx64.efi"
-                    grub_modules = "multiboot efi_uga iorw ata "
-                    if get_bitbake_var("DISTRO").startswith("ubuntu") and \
+                    grub_modules = "multiboot iorw ata "
+                    if "sid" not in distro:
+                        grub_modules += "efi_uga "
+                    if distro.startswith("ubuntu") and \
                         os.path.exists('/usr/lib/grub/x86_64-efi/linuxefi.mod'):
                         grub_modules += "linuxefi "
                 elif distro_arch == "i386":