all messages for Guix-related lists mirrored at yhetil.org
 help / color / mirror / code / Atom feed
* bug#18082: 'guix system reconfigure' fails to install grub from standalone guix
@ 2014-07-22 17:01 Mark H Weaver
  2014-07-22 17:46 ` Ludovic Courtès
  0 siblings, 1 reply; 8+ messages in thread
From: Mark H Weaver @ 2014-07-22 17:01 UTC (permalink / raw)
  To: 18082

I built guix from git master from within a standalone guix install.  I
then tried to run 'pre-inst-env guix system reconfigure' using the same
OS configuration, and it failed to install grub.

The error message said "failed to install GRUB on device '/dev/sda'",
which indicates that 'install-grub' raised an exception.

     Mark

^ permalink raw reply	[flat|nested] 8+ messages in thread

* bug#18082: 'guix system reconfigure' fails to install grub from standalone guix
  2014-07-22 17:01 bug#18082: 'guix system reconfigure' fails to install grub from standalone guix Mark H Weaver
@ 2014-07-22 17:46 ` Ludovic Courtès
  2014-07-22 19:08   ` Mark H Weaver
  0 siblings, 1 reply; 8+ messages in thread
From: Ludovic Courtès @ 2014-07-22 17:46 UTC (permalink / raw)
  To: Mark H Weaver; +Cc: 18082

In guix/scripts/system.scm, could you remove ‘false-if-exception’ around
‘install-grub’, and report the backtrace?

Thanks,
Ludo’.

^ permalink raw reply	[flat|nested] 8+ messages in thread

* bug#18082: 'guix system reconfigure' fails to install grub from standalone guix
  2014-07-22 17:46 ` Ludovic Courtès
@ 2014-07-22 19:08   ` Mark H Weaver
  2014-07-22 20:17     ` Ludovic Courtès
  0 siblings, 1 reply; 8+ messages in thread
From: Mark H Weaver @ 2014-07-22 19:08 UTC (permalink / raw)
  To: Ludovic Courtès; +Cc: 18082

ludo@gnu.org (Ludovic Courtès) writes:
> In guix/scripts/system.scm, could you remove ‘false-if-exception’ around
> ‘install-grub’, and report the backtrace?

Here it is:

--8<---------------cut here---------------start------------->8---
root@jojen# ~mhw/guix/pre-inst-env guix system reconfigure ~mhw/os-install.scm 
The following derivation will be built:
   /gnu/store/ynkp0ijahvg4x1q6bfdw34d28hhqmgb4-grub.cfg.drv
killing process 1117
/gnu/store/ay6f47hv2gy4hny4ycnbyn0jnyd60n4v-system
/gnu/store/2yrylvn5c9apgfpppc5kfb24fi7mrnpl-grub-2.00
/gnu/store/6qwr8shknwlb1f1l0a7j6n3h8sg36bv7-grub.cfg
activating system...
populating /etc from /gnu/store/p4gvgs07g7gmsygjb3767r5k32v3l1y5-etc...
setting up setuid programs in '/run/setuid-programs'...
making '/gnu/store/ay6f47hv2gy4hny4ycnbyn0jnyd60n4v-system' the current system...
Backtrace:
In ice-9/boot-9.scm:
 157: 15 [catch #t #<catch-closure 9037cb0> ...]
In unknown file:
   ?: 14 [apply-smob/1 #<catch-closure 9037cb0>]
In ice-9/boot-9.scm:
  63: 13 [call-with-prompt prompt0 ...]
In ice-9/eval.scm:
 432: 12 [eval # #]
In ice-9/boot-9.scm:
2401: 11 [save-module-excursion #<procedure 9047ca0 at ice-9/boot-9.scm:4045:3 ()>]
4050: 10 [#<procedure 9047ca0 at ice-9/boot-9.scm:4045:3 ()>]
1724: 9 [%start-stack load-stack ...]
1729: 8 [#<procedure 904c708 ()>]
In unknown file:
   ?: 7 [primitive-load "/home/mhw/guix/scripts/guix"]
In guix/ui.scm:
 656: 6 [run-guix-command system "reconfigure" "/home/mhw/os-install.scm"]
In ice-9/boot-9.scm:
 157: 5 [catch srfi-34 #<procedure 96c5ae0 at guix/ui.scm:205:2 ()> ...]
 157: 4 [catch system-error ...]
In guix/monads.scm:
 430: 3 [run-with-store # ...]
In guix/scripts/system.scm:
 301: 2 [#<procedure a95b120 at guix/scripts/system.scm:299:13 (store)> #]
In guix/build/install.scm:
  47: 1 [install-grub # "/dev/sda" "/"]
In unknown file:
   ?: 0 [copy-file # "//boot/grub/grub.cfg.new"]

ERROR: In procedure copy-file:
ERROR: Wrong type (expecting string): #<derivation /gnu/store/ynkp0ijahvg4x1q6bfdw34d28hhqmgb4-grub.cfg.drv => /gnu/store/6qwr8shknwlb1f1l0a7j6n3h8sg36bv7-grub.cfg b7ecf78>
root@jojen# 
--8<---------------cut here---------------end--------------->8---

and here's my os-install.scm:

--8<---------------cut here---------------start------------->8---
(use-modules (gnu)
	     (gnu packages emacs)
	     (gnu packages admin)
	     (gnu packages linux)
	     (gnu services base)
	     (gnu services networking)
	     (guix monads)
	     (srfi srfi-26))

(operating-system
  (host-name "jojen")
  (timezone "US/Eastern")
  (bootloader (grub-configuration
		(device "/dev/sda")))
  (file-systems (list (file-system
			(device "librintel-guix")
			(mount-point "/")
			(type "ext4"))))
  (users (list (user-account
		(name "mhw")
		(group "mhw")
		(password "")
		(uid 1000)
		(home-directory "/home/mhw"))))
  (groups (cons (user-group
		 (name "mhw")
		 (id 1000))
		%base-groups))
  (packages (cons* emacs
		   wpa-supplicant
		   wireless-tools
		   module-init-tools
		   isc-dhcp
		   %base-packages))
  (services
   (let ((motd (text-file "motd" "
This is the GNU operating system, welcome!\n\n")))
     (list (console-font-service "tty1")
	   (console-font-service "tty2")
	   (console-font-service "tty3")
	   (console-font-service "tty4")
	   (console-font-service "tty5")
	   (console-font-service "tty6")

	   (mingetty-service "tty1" #:motd motd)
	   (mingetty-service "tty2" #:motd motd)
	   (mingetty-service "tty3" #:motd motd)
	   (mingetty-service "tty4" #:motd motd)
	   (mingetty-service "tty5" #:motd motd)
	   (mingetty-service "tty6" #:motd motd)
	   (static-networking-service "lo" "127.0.0.1"
				      #:provision '(loopback))
	   (syslog-service)
	   (guix-service #:authorize-hydra-key? #t)
	   (nscd-service)
	   (udev-service)))))
--8<---------------cut here---------------end--------------->8---

   Thanks!
     Mark

^ permalink raw reply	[flat|nested] 8+ messages in thread

* bug#18082: 'guix system reconfigure' fails to install grub from standalone guix
  2014-07-22 19:08   ` Mark H Weaver
@ 2014-07-22 20:17     ` Ludovic Courtès
  2014-07-23  2:41       ` Mark H Weaver
  0 siblings, 1 reply; 8+ messages in thread
From: Ludovic Courtès @ 2014-07-22 20:17 UTC (permalink / raw)
  To: Mark H Weaver; +Cc: 18082

[-- Attachment #1: Type: text/plain, Size: 433 bytes --]

Mark H Weaver <mhw@netris.org> skribis:

> In guix/build/install.scm:
>   47: 1 [install-grub # "/dev/sda" "/"]
> In unknown file:
>    ?: 0 [copy-file # "//boot/grub/grub.cfg.new"]
>
> ERROR: In procedure copy-file:
> ERROR: Wrong type (expecting string): #<derivation /gnu/store/ynkp0ijahvg4x1q6bfdw34d28hhqmgb4-grub.cfg.drv => /gnu/store/6qwr8shknwlb1f1l0a7j6n3h8sg36bv7-grub.cfg b7ecf78>

Oops, should be much better with this:


[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: Type: text/x-patch, Size: 651 bytes --]

diff --git a/guix/scripts/system.scm b/guix/scripts/system.scm
index 57f4221..5737807 100644
--- a/guix/scripts/system.scm
+++ b/guix/scripts/system.scm
@@ -299,7 +299,8 @@ actions."
              (mlet %store-monad ((% (switch-to-system os)))
                (when grub?
                  (unless (false-if-exception
-                          (install-grub grub.cfg device "/"))
+                          (install-grub (derivation->output-path grub.cfg)
+                                        device "/"))
                    (leave (_ "failed to install GRUB on device '~a'~%")
                           device)))
                (return #t)))

[-- Attachment #3: Type: text/plain, Size: 928 bytes --]


Can you confirm?

>   (services
>    (let ((motd (text-file "motd" "
> This is the GNU operating system, welcome!\n\n")))
>      (list (console-font-service "tty1")
> 	   (console-font-service "tty2")
> 	   (console-font-service "tty3")
> 	   (console-font-service "tty4")
> 	   (console-font-service "tty5")
> 	   (console-font-service "tty6")
>
> 	   (mingetty-service "tty1" #:motd motd)
> 	   (mingetty-service "tty2" #:motd motd)
> 	   (mingetty-service "tty3" #:motd motd)
> 	   (mingetty-service "tty4" #:motd motd)
> 	   (mingetty-service "tty5" #:motd motd)
> 	   (mingetty-service "tty6" #:motd motd)
> 	   (static-networking-service "lo" "127.0.0.1"
> 				      #:provision '(loopback))
> 	   (syslog-service)
> 	   (guix-service #:authorize-hydra-key? #t)
> 	   (nscd-service)
> 	   (udev-service)))))

Perhaps we should make #:authorize-hydra-key? #t the default?

Thanks!

Ludo’.

^ permalink raw reply related	[flat|nested] 8+ messages in thread

* bug#18082: 'guix system reconfigure' fails to install grub from standalone guix
  2014-07-22 20:17     ` Ludovic Courtès
@ 2014-07-23  2:41       ` Mark H Weaver
  2014-07-23 16:21         ` Ludovic Courtès
  0 siblings, 1 reply; 8+ messages in thread
From: Mark H Weaver @ 2014-07-23  2:41 UTC (permalink / raw)
  To: Ludovic Courtès; +Cc: 18082

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

> Mark H Weaver <mhw@netris.org> skribis:
>
>> In guix/build/install.scm:
>>   47: 1 [install-grub # "/dev/sda" "/"]
>> In unknown file:
>>    ?: 0 [copy-file # "//boot/grub/grub.cfg.new"]
>>
>> ERROR: In procedure copy-file:
>> ERROR: Wrong type (expecting string): #<derivation /gnu/store/ynkp0ijahvg4x1q6bfdw34d28hhqmgb4-grub.cfg.drv => /gnu/store/6qwr8shknwlb1f1l0a7j6n3h8sg36bv7-grub.cfg b7ecf78>
>
> Oops, should be much better with this:
>
> diff --git a/guix/scripts/system.scm b/guix/scripts/system.scm
> index 57f4221..5737807 100644
> --- a/guix/scripts/system.scm
> +++ b/guix/scripts/system.scm
> @@ -299,7 +299,8 @@ actions."
>               (mlet %store-monad ((% (switch-to-system os)))
>                 (when grub?
>                   (unless (false-if-exception
> -                          (install-grub grub.cfg device "/"))
> +                          (install-grub (derivation->output-path grub.cfg)
> +                                        device "/"))
>                     (leave (_ "failed to install GRUB on device '~a'~%")
>                            device)))
>                 (return #t)))
>
> Can you confirm?

That helped, and now it successfully updates the grub.cfg file, but now
there's another problem.  When it tries to execvp 'grub-install', it
can't find it because PATH is set to:

  "/gnu/store/l5815c2iars8scdy82grfjjmxv9ahgv2-shadow-4.1.5.1/sbin"

Here's a transcript of the attempt, with (pk 'path (getenv "PATH"))
inserted just before the (system* "grub-install" ...) call in
guix/build/install.scm:

--8<---------------cut here---------------start------------->8---
root@jojen# echo $PATH
/run/setuid-programs:/run/current-system/profile/sbin:/root/.guix-profile/bin:/run/current-system/profile/bin
root@jojen# ~mhw/guix/pre-inst-env guix system reconfigure ~mhw/os-install.scm
The following derivation will be built:
   /gnu/store/1rj11nb1sv3jx2aalnqa7xl09nw6vfnr-grub.cfg.drv
killing process 1587
/gnu/store/qfacd34rj6v8b9mi21qx9mj3lkq3c2pg-system
/gnu/store/2yrylvn5c9apgfpppc5kfb24fi7mrnpl-grub-2.00
/gnu/store/ymxq6025wb6h3vp0glryykarz8r7hqhs-grub.cfg
activating system...
populating /etc from /gnu/store/89dn636ibbc2dy8wqaz30ck3dcli44jk-etc...
setting up setuid programs in '/run/setuid-programs'...
making '/gnu/store/qfacd34rj6v8b9mi21qx9mj3lkq3c2pg-system' the current system...

;;; (path "/gnu/store/l5815c2iars8scdy82grfjjmxv9ahgv2-shadow-4.1.5.1/sbin")
In execvp of grub-install: No such file or directory
Backtrace:
In ice-9/boot-9.scm:
 157: 14 [catch #t #<catch-closure 94cfcb0> ...]
In unknown file:
   ?: 13 [apply-smob/1 #<catch-closure 94cfcb0>]
In ice-9/boot-9.scm:
  63: 12 [call-with-prompt prompt0 ...]
In ice-9/eval.scm:
 432: 11 [eval # #]
In ice-9/boot-9.scm:
2401: 10 [save-module-excursion #<procedure 94dfca0 at ice-9/boot-9.scm:4045:3 ()>]
4050: 9 [#<procedure 94dfca0 at ice-9/boot-9.scm:4045:3 ()>]
1724: 8 [%start-stack load-stack ...]
1729: 7 [#<procedure 94e4708 ()>]
In unknown file:
   ?: 6 [primitive-load "/home/mhw/guix/scripts/guix"]
In guix/ui.scm:
 656: 5 [run-guix-command system "reconfigure" "/home/mhw/os-install.scm"]
In ice-9/boot-9.scm:
 157: 4 [catch srfi-34 #<procedure 98f6110 at guix/ui.scm:205:2 ()> ...]
 157: 3 [catch system-error ...]
In guix/monads.scm:
 430: 2 [run-with-store # ...]
In guix/scripts/system.scm:
 301: 1 [#<procedure afe7c40 at guix/scripts/system.scm:299:13 (store)> #]
In unknown file:
   ?: 0 [scm-error misc-error #f "~A" ("failed to install GRUB") #f]

ERROR: In procedure scm-error:
ERROR: failed to install GRUB
root@jojen# 
--8<---------------cut here---------------end--------------->8---

     Thanks,
       Mark

^ permalink raw reply	[flat|nested] 8+ messages in thread

* bug#18082: 'guix system reconfigure' fails to install grub from standalone guix
  2014-07-23  2:41       ` Mark H Weaver
@ 2014-07-23 16:21         ` Ludovic Courtès
  2014-07-23 22:51           ` Mark H Weaver
  0 siblings, 1 reply; 8+ messages in thread
From: Ludovic Courtès @ 2014-07-23 16:21 UTC (permalink / raw)
  To: Mark H Weaver; +Cc: 18082

Mark H Weaver <mhw@netris.org> skribis:

> populating /etc from /gnu/store/89dn636ibbc2dy8wqaz30ck3dcli44jk-etc...
> setting up setuid programs in '/run/setuid-programs'...
> making '/gnu/store/qfacd34rj6v8b9mi21qx9mj3lkq3c2pg-system' the current system...
>
> ;;; (path "/gnu/store/l5815c2iars8scdy82grfjjmxv9ahgv2-shadow-4.1.5.1/sbin")
> In execvp of grub-install: No such file or directory

OK, commit 720ee24 should bring us one step closer.  Could you check?

Thanks a lot!

Ludo’.

^ permalink raw reply	[flat|nested] 8+ messages in thread

* bug#18082: 'guix system reconfigure' fails to install grub from standalone guix
  2014-07-23 16:21         ` Ludovic Courtès
@ 2014-07-23 22:51           ` Mark H Weaver
  2014-07-24  8:25             ` Ludovic Courtès
  0 siblings, 1 reply; 8+ messages in thread
From: Mark H Weaver @ 2014-07-23 22:51 UTC (permalink / raw)
  To: Ludovic Courtès; +Cc: 18082-done

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

> Mark H Weaver <mhw@netris.org> skribis:
>
>> populating /etc from /gnu/store/89dn636ibbc2dy8wqaz30ck3dcli44jk-etc...
>> setting up setuid programs in '/run/setuid-programs'...
>> making '/gnu/store/qfacd34rj6v8b9mi21qx9mj3lkq3c2pg-system' the current system...
>>
>> ;;; (path "/gnu/store/l5815c2iars8scdy82grfjjmxv9ahgv2-shadow-4.1.5.1/sbin")
>> In execvp of grub-install: No such file or directory
>
> OK, commit 720ee24 should bring us one step closer.  Could you check?

'guix system reconfigure' now works.
I'm closing this bug.

   Thanks! :)
     Mark

^ permalink raw reply	[flat|nested] 8+ messages in thread

* bug#18082: 'guix system reconfigure' fails to install grub from standalone guix
  2014-07-23 22:51           ` Mark H Weaver
@ 2014-07-24  8:25             ` Ludovic Courtès
  0 siblings, 0 replies; 8+ messages in thread
From: Ludovic Courtès @ 2014-07-24  8:25 UTC (permalink / raw)
  To: Mark H Weaver; +Cc: 18082-done

Thanks for testing!

Ludo’.

^ permalink raw reply	[flat|nested] 8+ messages in thread

end of thread, other threads:[~2014-07-24  8:26 UTC | newest]

Thread overview: 8+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2014-07-22 17:01 bug#18082: 'guix system reconfigure' fails to install grub from standalone guix Mark H Weaver
2014-07-22 17:46 ` Ludovic Courtès
2014-07-22 19:08   ` Mark H Weaver
2014-07-22 20:17     ` Ludovic Courtès
2014-07-23  2:41       ` Mark H Weaver
2014-07-23 16:21         ` Ludovic Courtès
2014-07-23 22:51           ` Mark H Weaver
2014-07-24  8:25             ` Ludovic Courtès

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.