Marius Bakke writes: > Danny Milosavljevic writes: > >> Hi Ricardo, >> >> On Wed, 31 Jan 2018 19:55:58 +0100 >> Ricardo Wurmus wrote: >> >>> “guix system init” fails with a configuration file that specifies >>> grub-bootloader (not grub-efi-bootloader). >>> >>> “grub-install” reports an error about “lib/grub/x86_64-efi/modinfo.sh” >>> not being available. It suggests passing “--target” or “--device”. >>> >>> Our invocation of grub-install does not include a “--target” argument. >>> Only after I edited it to pass “--target=i386-pc” did “guix system init” >>> pass. >> >> Hmm, I wonder what happened here. >> >> We've been very careful to keep grub and grub-efi separate. >> >> The entire directory lib/grub/x86_64-efi shouldn't be available in the >> "grub" package output - and I checked on master, it isn't. Good. >> >> So that leaves automatic target selection as the culprit. >> >> And indeed, there's a call to grub_install_get_default_x86_platform >> in util/grub-install.c . And that checks for availability of >> /sys/firmware/efi and if it exists, defaults to EFI. >> >> I think it's a bug in grub to do that for a grub which doesn't have EFI >> platform support. :P >> >> We could just always pass i386-pc in install-grub for i386, but then >> we lose i386-ieee1275 (which I have never heard anyone using so maybe >> not so bad). > > I agree, passing --target seems like the best workaround for this GRUB > bug. Okay, I’ve added “--target=i386-pc” to the list of arguments. Thanks for the comments. -- Ricardo