Hello Maxim, Thanks for your patch! It's hard to provide a reliable abstraction on top of all the exotic bootloader installation methods existing. Currently, each bootloader implements two methods: * bootloader-installer * bootloader-disk-image-installer The first one is dedicated to the installation of the bootloader on a mounted directory, while the second one is meant to work on a disk device such as "/dev/sda" or directly on a disk-image. When producing a disk-image with the "raw" type, we are always creating and populating an ESP partition (see raw-image-type), regardless of the selected bootloader. In fact, "raw" should be renamed to "hybrid-efi". The produced image can work on machines with legacy mbr boot or with EFI boot. Hence, calling "install-grub-efi" like it's done while building the lightweight-desktop operating-system is useless and fails. The attached patch fixes it. You can test it with: --8<---------------cut here---------------start------------->8--- qemu-system-x86_64 -m 1024 -bios $(guix build ovmf)/share/firmware/ovmf_x64.bin -hda disk.img --8<---------------cut here---------------end--------------->8--- > + ;; Special case: most bootloaders can be copied > + ;; directly at some fixed location on the image > + ;; disk, but when installed to the master boot > + ;; record (MBR), GRUB requires support files > + ;; present under /boot/grub, which is handled by > + ;; its 'installer' procedure. > #:bootloader-installer > - #+(bootloader-installer bootloader) > + #+(if (eq? 'grub (bootloader-name bootloader)) > + (bootloader-installer bootloader) > + #f) That would prevent other bootloaders relying on this procedure to work, such as extlinux. Thanks, Mathieu