unofficial mirror of bug-guix@gnu.org 
 help / color / mirror / code / Atom feed
* bug#23881: System building failure
@ 2016-07-01  9:20 Kooda
  2016-07-15 16:29 ` Ludovic Courtès
  0 siblings, 1 reply; 4+ messages in thread
From: Kooda @ 2016-07-01  9:20 UTC (permalink / raw)
  To: 23881; +Cc: Kooda

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@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.

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

* bug#23881: System building failure
  2016-07-01  9:20 bug#23881: System building failure Kooda
@ 2016-07-15 16:29 ` Ludovic Courtès
  2016-08-20  9:07   ` Mark H Weaver
  0 siblings, 1 reply; 4+ messages in thread
From: Ludovic Courtès @ 2016-07-15 16:29 UTC (permalink / raw)
  To: Kooda; +Cc: 23881

Hello,

Kooda <kooda@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’.

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

* bug#23881: System building failure
  2016-07-15 16:29 ` Ludovic Courtès
@ 2016-08-20  9:07   ` Mark H Weaver
  2016-08-21 15:27     ` Ludovic Courtès
  0 siblings, 1 reply; 4+ messages in thread
From: Mark H Weaver @ 2016-08-20  9:07 UTC (permalink / raw)
  To: Ludovic Courtès; +Cc: 23881-done, Kooda

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

> Kooda <kooda@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

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

* bug#23881: System building failure
  2016-08-20  9:07   ` Mark H Weaver
@ 2016-08-21 15:27     ` Ludovic Courtès
  0 siblings, 0 replies; 4+ messages in thread
From: Ludovic Courtès @ 2016-08-21 15:27 UTC (permalink / raw)
  To: Mark H Weaver; +Cc: 23881-done, Kooda

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

> ludo@gnu.org (Ludovic Courtès) writes:
>
>> Kooda <kooda@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’.

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

end of thread, other threads:[~2016-08-21 22:28 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2016-07-01  9:20 bug#23881: System building failure Kooda
2016-07-15 16:29 ` Ludovic Courtès
2016-08-20  9:07   ` Mark H Weaver
2016-08-21 15:27     ` Ludovic Courtès

Code repositories for project(s) associated with this public inbox

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

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).