all messages for Guix-related lists mirrored at yhetil.org
 help / color / mirror / code / Atom feed
From: Oleg Pykhalov <go.wigust@gmail.com>
To: "Ludovic Courtès" <ludo@gnu.org>
Cc: 28768@debbugs.gnu.org
Subject: bug#28768: guix system vm Failed to install GRUB (EFI)
Date: Thu, 19 Oct 2017 23:32:56 +0300	[thread overview]
Message-ID: <87y3o6yj2f.fsf@gmail.com> (raw)
In-Reply-To: <877ew0rbxc.fsf@gnu.org> ("Ludovic \=\?utf-8\?Q\?Court\=C3\=A8s\=22'\?\= \=\?utf-8\?Q\?s\?\= message of "Thu, 12 Oct 2017 10:46:23 +0200")

Hello Ludovic,

Apologies for the late reply.

ludo@gnu.org (Ludovic Courtès) writes:

> Marius Bakke <mbakke@fastmail.com> skribis:
>
>> Oleg Pykhalov <go.wigust@gmail.com> writes:
>>
>>> EFI bootloader configuration causes problems to test with 'system vm'
>>> before 'reconfigure'.
>>
>> This is because `guix system vm` is not currently UEFI enabled, so GRUB
>> tries to install for a normal PC BIOS.
>>
>> The fix would be to make the various QEMU invocations in (gnu system vm)
>> take a #:firmware parameter that passes something along the lines of
>> '-bios #$(file-append ovmf "/share/ovmf/firmware/ovmf_x64.bin")' to the
>> QEMU command-line, and update other scripts to take advantage.
>
> Perhaps by adding it to <virtual-machine> records we’d make it less
> annoying to pass around?  Or are there other places that would still
> need extra care?
>
> 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.
>
> Thanks,
> Ludo’.

Tiny improvement:

--8<---------------cut here---------------start------------->8---
natsu@magnolia ~/src/guix$ pre-guix system vm ~/dotfiles/guix/system-magnolia.scm
Backtrace:
          10 (primitive-load "/home/natsu/src/guix/scripts/guix")
In guix/ui.scm:
  1384:12  9 (run-guix-command _ . _)
In ice-9/boot-9.scm:
    837:9  8 (catch _ _ #<procedure 7f3d47deeac0 at guix/ui.scm:460:2 (key c)> _)
    837:9  7 (catch _ _ #<procedure 7f3d47deead8 at guix/ui.scm:548:6 (key proc…> …)
In guix/scripts/system.scm:
   1099:8  6 (_)
    974:6  5 (process-action _ _ _)
In guix/store.scm:
  1444:24  4 (run-with-store _ _ #:guile-for-build _ #:system _ #:target _)
In guix/scripts/system.scm:
   987:13  3 (_ _)
   706:18  2 (perform-action vm #<<operating-system> kernel: #<package linux-li…> …)
In gnu/system/vm.scm:
   671:31  1 (system-qemu-image/shared-store-script #<<operating-system> kernel…> …)
    559:4  0 (virtualized-operating-system #<<operating-system> kernel: #<packa…> …)

gnu/system/vm.scm:559:4: In procedure virtualized-operating-system:
gnu/system/vm.scm:559:4: In procedure module-lookup: Unbound variable: grub-bootloader
--8<---------------cut here---------------end--------------->8---

diff --git a/gnu/system/vm.scm b/gnu/system/vm.scm
index f763b430b..7feb242d5 100644
--- a/gnu/system/vm.scm
+++ b/gnu/system/vm.scm
@@ -49,7 +49,8 @@
   #:use-module (gnu packages admin)
 
   #:use-module (gnu bootloader)
-  #:use-module ((gnu bootloader grub) #:select (grub-mkrescue-bootloader))
+  #:use-module ((gnu bootloader grub) #:select (grub-mkrescue-bootloader
+                                                grub-bootloader))
   #:use-module (gnu system shadow)
   #:use-module (gnu system pam)
   #:use-module (gnu system linux-initrd)


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'
    …

      parent reply	other threads:[~2017-10-19 20:34 UTC|newest]

Thread overview: 6+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2017-10-09 19:50 bug#28768: guix system vm Failed to install GRUB (EFI) Oleg Pykhalov
2017-10-10 19:08 ` Marius Bakke
2017-10-12  8:46   ` Ludovic Courtès
2017-10-19 18:21     ` Marius Bakke
2017-10-19 21:25       ` Ludovic Courtès
2017-10-19 20:32     ` Oleg Pykhalov [this message]

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=87y3o6yj2f.fsf@gmail.com \
    --to=go.wigust@gmail.com \
    --cc=28768@debbugs.gnu.org \
    --cc=ludo@gnu.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
Code repositories for project(s) associated with this external index

	https://git.savannah.gnu.org/cgit/guix.git

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.