GNU bug report logs - #23881
System building failure

Previous Next

Package: guix;

Reported by: Kooda <kooda <at> upyum.com>

Date: Fri, 1 Jul 2016 15:28:02 UTC

Severity: normal

Done: Mark H Weaver <mhw <at> netris.org>

Bug is archived. No further changes may be made.

To add a comment to this bug, you must first unarchive it, by sending
a message to control AT debbugs.gnu.org, with unarchive 23881 in the body.
You can then email your comments to 23881 AT debbugs.gnu.org in the normal way.

Toggle the display of automated, internal messages from the tracker.

View this report as an mbox folder, status mbox, maintainer mbox


Report forwarded to bug-guix <at> gnu.org:
bug#23881; Package guix. (Fri, 01 Jul 2016 15:28:02 GMT) Full text and rfc822 format available.

Acknowledgement sent to Kooda <kooda <at> upyum.com>:
New bug report received and forwarded. Copy sent to bug-guix <at> gnu.org. (Fri, 01 Jul 2016 15:28:02 GMT) Full text and rfc822 format available.

Message #5 received at submit <at> debbugs.gnu.org (full text, mbox):

From: Kooda <kooda <at> upyum.com>
To: bug-guix <at> gnu.org
Cc: Kooda <kooda <at> upyum.com>
Subject: System building failure
Date: Fri, 01 Jul 2016 11:20:01 +0200
Hi!

I installed GuixSD yesterday and found a bug this morning when trying
to build a new system generation.


Here is the config file I use:

(use-modules (gnu) (gnu system nss))
(use-service-modules networking)
(use-package-modules certs xorg xdisorg fonts admin zsh)

(operating-system
  (host-name "crocmou")
  (timezone "Europe/Paris")
  (locale "en_US.UTF-8")

  (bootloader (grub-configuration (device "/dev/sda")))

  (initrd (lambda (file-systems . rest)
            (apply base-initrd file-systems
                   #:extra-modules '("sata_nv")
                   rest)))


  (file-systems (cons (file-system
                        (title 'uuid)
                        (device (uuid "a08e57ba-6275-4e22-90e5-1d9b34ae363d"))
                        (mount-point "/")
                        (type "ext4"))
                      %base-file-systems))

  (users (cons (user-account
                (name "kooda")
                (comment "The otter user")
                (group "users")
                (supplementary-groups '("wheel" "netdev"
                                        "audio" "video"))
                (home-directory "/home/kooda")
                (shell #~(string-append #$zsh "/bin/zsh")))
               %base-user-accounts))

  ;; This is where we specify system-wide packages.
  (packages (cons* nss-certs         ;for HTTPS access
                   xorg-server xf86-video-ati xf86-input-evdev
                   xf86-video-vesa
                   ;; rxvt-unicode font-terminus font-dejavu htop
                   %base-packages))

  (setuid-programs (cons* #~(string-append #$xorg-server "/bin/Xorg")
                          %setuid-programs))

  (services (cons* (console-keymap-service "fr-bepo")
                   (dhcp-client-service)
                   %base-services)))



Running `guix system build /etc/config.scm` fails with the following error:

Backtrace:
In unknown file:
   ?: 19 [apply-smob/1 #<catch-closure 1a4e980>]
In ice-9/boot-9.scm:
  63: 18 [call-with-prompt prompt0 ...]
In ice-9/eval.scm:
 432: 17 [eval # #]
In ice-9/boot-9.scm:
2401: 16 [save-module-excursion #<procedure 1a6b940 at ice-9/boot-9.scm:4045:3 ()>]
4050: 15 [#<procedure 1a6b940 at ice-9/boot-9.scm:4045:3 ()>]
1724: 14 [%start-stack load-stack ...]
1729: 13 [#<procedure 1a82ea0 ()>]
In unknown file:
   ?: 12 [primitive-load "/gnu/store/vw26xsn24jmrijn939fjjk50m5i4hfq3-guix-0.10.0-0.e901/bin/.guix-real"]
In guix/ui.scm:
1209: 11 [run-guix-command system "build" "/etc/config.scm"]
In ice-9/boot-9.scm:
 157: 10 [catch srfi-34 #<procedure 44f2140 at guix/ui.scm:425:2 ()> ...]
 157: 9 [catch system-error ...]
In guix/scripts/system.scm:
 882: 8 [#<procedure 44f6f90 at guix/scripts/system.scm:874:2 ()>]
 788: 7 [process-action build ("/etc/config.scm") ...]
In guix/store.scm:
1182: 6 [run-with-store # ...]
In guix/scripts/system.scm:
 564: 5 [#<procedure 47c8fc0 at guix/scripts/system.scm:564:2 (state)> #]
 575: 4 [#<procedure 6d062a0 at guix/scripts/system.scm:564:2 (grub)> #]
In srfi/srfi-1.scm:
 672: 3 [filter-map #<procedure system->grub-entry (system number time)> # # ...]
In ice-9/boot-9.scm:
 157: 2 [catch system-error ...]
In guix/scripts/system.scm:
 404: 1 [#<procedure 7a37d50 at guix/scripts/system.scm:390:4 ()>]
In unknown file:
   ?: 0 [string-append "--root=" ...]

ERROR: In procedure string-append:
ERROR: In procedure string-append: Wrong type (expecting string): #vu8(160 142 87 186 98 117 78 34 144 229 29 155 52 174 54 61)



The odd bytevector from the error seems to be the partition’s UUID,
but I get the exact same error when trying to use a label instead of
the UUID.

I found that this same bytevector is what the current generation
refers to as root device:

kooda <at> crocmou:~$ guix system list-generations
Generation 1	Jul 01 2016 02:17:52	(current)
  file name: /var/guix/profiles/system-1-link
  canonical file name: /gnu/store/94klzjkx49if12x0n9pig3f5xxk3y33a-system
  label: GNU with Linux-Libre 4.6.3 (beta)
  root device: #vu8(160 142 87 186 98 117 78 34 144 229 29 155 52 174 54 61)
  kernel: /gnu/store/alqjsslhc7rh1lskxg2xjh6cs37ms1kd-linux-libre-4.6.3



I also ran `guix pull` this morning so I have a recent version.




Information forwarded to bug-guix <at> gnu.org:
bug#23881; Package guix. (Fri, 15 Jul 2016 16:30:02 GMT) Full text and rfc822 format available.

Message #8 received at 23881 <at> debbugs.gnu.org (full text, mbox):

From: ludo <at> gnu.org (Ludovic Courtès)
To: Kooda <kooda <at> upyum.com>
Cc: 23881 <at> debbugs.gnu.org
Subject: Re: bug#23881: System building failure
Date: Fri, 15 Jul 2016 18:29:06 +0200
Hello,

Kooda <kooda <at> upyum.com> skribis:

> I installed GuixSD yesterday and found a bug this morning when trying
> to build a new system generation.

[...]

>   (file-systems (cons (file-system
>                         (title 'uuid)
>                         (device (uuid "a08e57ba-6275-4e22-90e5-1d9b34ae363d"))
>                         (mount-point "/")
>                         (type "ext4"))
>                       %base-file-systems))

[...]

> Running `guix system build /etc/config.scm` fails with the following error:
>
> Backtrace:
> In unknown file:
>    ?: 19 [apply-smob/1 #<catch-closure 1a4e980>]
> In ice-9/boot-9.scm:
>   63: 18 [call-with-prompt prompt0 ...]
> In ice-9/eval.scm:
>  432: 17 [eval # #]
> In ice-9/boot-9.scm:
> 2401: 16 [save-module-excursion #<procedure 1a6b940 at ice-9/boot-9.scm:4045:3 ()>]
> 4050: 15 [#<procedure 1a6b940 at ice-9/boot-9.scm:4045:3 ()>]
> 1724: 14 [%start-stack load-stack ...]
> 1729: 13 [#<procedure 1a82ea0 ()>]
> In unknown file:
>    ?: 12 [primitive-load "/gnu/store/vw26xsn24jmrijn939fjjk50m5i4hfq3-guix-0.10.0-0.e901/bin/.guix-real"]
> In guix/ui.scm:
> 1209: 11 [run-guix-command system "build" "/etc/config.scm"]
> In ice-9/boot-9.scm:
>  157: 10 [catch srfi-34 #<procedure 44f2140 at guix/ui.scm:425:2 ()> ...]
>  157: 9 [catch system-error ...]
> In guix/scripts/system.scm:
>  882: 8 [#<procedure 44f6f90 at guix/scripts/system.scm:874:2 ()>]
>  788: 7 [process-action build ("/etc/config.scm") ...]
> In guix/store.scm:
> 1182: 6 [run-with-store # ...]
> In guix/scripts/system.scm:
>  564: 5 [#<procedure 47c8fc0 at guix/scripts/system.scm:564:2 (state)> #]
>  575: 4 [#<procedure 6d062a0 at guix/scripts/system.scm:564:2 (grub)> #]
> In srfi/srfi-1.scm:
>  672: 3 [filter-map #<procedure system->grub-entry (system number time)> # # ...]
> In ice-9/boot-9.scm:
>  157: 2 [catch system-error ...]
> In guix/scripts/system.scm:
>  404: 1 [#<procedure 7a37d50 at guix/scripts/system.scm:390:4 ()>]
> In unknown file:
>    ?: 0 [string-append "--root=" ...]
>
> ERROR: In procedure string-append:
> ERROR: In procedure string-append: Wrong type (expecting string): #vu8(160 142 87 186 98 117 78 34 144 229 29 155 52 174 54 61)

I cannot reproduce it with current master.

> The odd bytevector from the error seems to be the partition’s UUID,
> but I get the exact same error when trying to use a label instead of
> the UUID.

Yes.

Unless I’m mistaken, the problem you report was fixed in
f453f637d5410f4d1e0b3787caa8d34b9b72d7d8 in January.

Could it be that you run ‘guix pull’ as a user but not as root?
Remember that ‘guix pull’ is per-user.

Thanks,
Ludo’.




Reply sent to Mark H Weaver <mhw <at> netris.org>:
You have taken responsibility. (Sat, 20 Aug 2016 09:09:01 GMT) Full text and rfc822 format available.

Notification sent to Kooda <kooda <at> upyum.com>:
bug acknowledged by developer. (Sat, 20 Aug 2016 09:09:02 GMT) Full text and rfc822 format available.

Message #13 received at 23881-done <at> debbugs.gnu.org (full text, mbox):

From: Mark H Weaver <mhw <at> netris.org>
To: ludo <at> gnu.org (Ludovic Courtès)
Cc: 23881-done <at> debbugs.gnu.org, Kooda <kooda <at> upyum.com>
Subject: Re: bug#23881: System building failure
Date: Sat, 20 Aug 2016 05:07:23 -0400
ludo <at> gnu.org (Ludovic Courtès) writes:

> Kooda <kooda <at> upyum.com> skribis:
>
>> Running `guix system build /etc/config.scm` fails with the following error:
>>
>> Backtrace:
[...]
>> In guix/scripts/system.scm:
>>  404: 1 [#<procedure 7a37d50 at guix/scripts/system.scm:390:4 ()>]
>> In unknown file:
>>    ?: 0 [string-append "--root=" ...]
>>
>> ERROR: In procedure string-append:
>> ERROR: In procedure string-append: Wrong type (expecting string): #vu8(160 142 87 186 98 117 78 34 144 229 29 155 52 174 54 61)

Fixed by commit c52bf877e9352cd9f29afb13fd4f7d39ed38f1a0.  I'm closing
this bug, but please re-open it if you believe there's still a problem.

> I cannot reproduce it with current master.

It only happens when one of the *previous* system generations specified
the root fs by UUID.  I guess this was not the case in your tests.

> Unless I’m mistaken, the problem you report was fixed in
> f453f637d5410f4d1e0b3787caa8d34b9b72d7d8 in January.

It turns out there was another place that needed fixing:
'previous-grub-entries' in (guix scripts system).  When the root device
of an older generation is specified by UUID, the root device stored in
${system}/parameters is a bytevector, and 'boot-parameters-root-device'
returns a bytevector.  'system->grub-entry' passes this bytevector to
'string-append' and that's what's happening in the backtrace above.

      Mark




Information forwarded to bug-guix <at> gnu.org:
bug#23881; Package guix. (Sun, 21 Aug 2016 22:28:02 GMT) Full text and rfc822 format available.

Message #16 received at 23881-done <at> debbugs.gnu.org (full text, mbox):

From: ludo <at> gnu.org (Ludovic Courtès)
To: Mark H Weaver <mhw <at> netris.org>
Cc: 23881-done <at> debbugs.gnu.org, Kooda <kooda <at> upyum.com>
Subject: Re: bug#23881: System building failure
Date: Sun, 21 Aug 2016 17:27:41 +0200
Mark H Weaver <mhw <at> netris.org> skribis:

> ludo <at> gnu.org (Ludovic Courtès) writes:
>
>> Kooda <kooda <at> upyum.com> skribis:
>>
>>> Running `guix system build /etc/config.scm` fails with the following error:
>>>
>>> Backtrace:
> [...]
>>> In guix/scripts/system.scm:
>>>  404: 1 [#<procedure 7a37d50 at guix/scripts/system.scm:390:4 ()>]
>>> In unknown file:
>>>    ?: 0 [string-append "--root=" ...]
>>>
>>> ERROR: In procedure string-append:
>>> ERROR: In procedure string-append: Wrong type (expecting string): #vu8(160 142 87 186 98 117 78 34 144 229 29 155 52 174 54 61)
>
> Fixed by commit c52bf877e9352cd9f29afb13fd4f7d39ed38f1a0.  I'm closing
> this bug, but please re-open it if you believe there's still a problem.
>
>> I cannot reproduce it with current master.
>
> It only happens when one of the *previous* system generations specified
> the root fs by UUID.  I guess this was not the case in your tests.
>
>> Unless I’m mistaken, the problem you report was fixed in
>> f453f637d5410f4d1e0b3787caa8d34b9b72d7d8 in January.
>
> It turns out there was another place that needed fixing:
> 'previous-grub-entries' in (guix scripts system).  When the root device
> of an older generation is specified by UUID, the root device stored in
> ${system}/parameters is a bytevector, and 'boot-parameters-root-device'
> returns a bytevector.  'system->grub-entry' passes this bytevector to
> 'string-append' and that's what's happening in the backtrace above.

Ooh I see, thanks for digging into it!

Ludo’.




bug archived. Request was from Debbugs Internal Request <help-debbugs <at> gnu.org> to internal_control <at> debbugs.gnu.org. (Mon, 19 Sep 2016 11:24:04 GMT) Full text and rfc822 format available.

This bug report was last modified 7 years and 214 days ago.

Previous Next


GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.