Subject: Re: bug#28768: guix system vm Failed to install GRUB (EFI)

From: [email-masked] (Ludovic Courtès)
Date: Thu, 19 Oct 2017 23:25:01 +0200

Hello!

Marius Bakke <[email-masked]> skribis:

> Ludovic Courtès <[email-masked]> writes:

[...]

>> Another option, in the meantime is this:
>>
>> diff --git a/gnu/system/vm.scm b/gnu/system/vm.scm
>> index 273a895be..f763b430b 100644
>> --- a/gnu/system/vm.scm
>> +++ b/gnu/system/vm.scm
>> @@ -565,6 +565,14 @@ environment with the store shared with the host.  MAPPINGS is a list of
>>                    user-file-systems)))
>>  
>>    (operating-system (inherit os)
>> +
>> +    ;; XXX: Until we run QEMU with UEFI support (with the OVMF firmware),
>> +    ;; force the traditional i386/BIOS method.
>> +    ;; See <https://bugs.gnu.org/28768>.
>> +    (bootloader (bootloader-configuration
>> +                  (bootloader grub-bootloader)
>> +                  (target "/dev/vda")))
>> +
>>      (initrd (lambda (file-systems . rest)
>>                (apply base-initrd file-systems
>>                       #:volatile-root? #t
>>
>> That’s what I do manually anyway.
>>
>> WDYT?  If that’s fine with you, I can commit it.
>
> LGTM!

Pushed as 9b396c0cabb086746cbe4ec20d4ae0d79962d758 (along with the
missing #:use-module clause that Oleg reported.)

I’m closing this bug.  We can create a new issue when we add support for
UEFI in VMs.

Oleg Pykhalov <[email-masked]> skribis:

> But I got another issue, not related to Grub.
>
> Loops in QEMU:
>
>     …
>     waiting for partition 'magnolia-data' to appear
>     …
>     failed to start service 'file-systems'
>     …

This is expected: there’s no partition with that label in the VM.

You have to comment out the ‘file-system’ declaration because it doesn’t
make sense inside the VM.  Perhaps ‘virtualized-operating-system’ could
do it automatically as well, not sure.

HTH,
Ludo’.