GNU bug report logs - #42161
Confusing 'guix system' backtrace when root file system is missing

Previous Next

Package: guix;

Reported by: Denis 'GNUtoo' Carikli <GNUtoo <at> cyberdimension.org>

Date: Thu, 2 Jul 2020 05:24:01 UTC

Severity: normal

Done: Maxim Cournoyer <maxim.cournoyer <at> gmail.com>

Bug is archived. No further changes may be made.

Full log


View this message in rfc822 format

From: help-debbugs <at> gnu.org (GNU bug Tracking System)
To: Maxim Cournoyer <maxim.cournoyer <at> gmail.com>
Cc: tracker <at> debbugs.gnu.org
Subject: bug#42161: closed (Confusing 'guix system' backtrace when root
 file system is missing)
Date: Sun, 10 Jan 2021 19:27:02 +0000
[Message part 1 (text/plain, inline)]
Your message dated Sun, 10 Jan 2021 14:26:21 -0500
with message-id <875z4461b6.fsf_-_ <at> gmail.com>
and subject line Re: bug#42161: Confusing 'guix system' backtrace when root file system is missing
has caused the debbugs.gnu.org bug report #42161,
regarding Confusing 'guix system' backtrace when root file system is missing
to be marked as done.

(If you believe you have received this mail in error, please contact
help-debbugs <at> gnu.org.)


-- 
42161: http://debbugs.gnu.org/cgi/bugreport.cgi?bug=42161
GNU Bug Tracking System
Contact help-debbugs <at> gnu.org with problems
[Message part 2 (message/rfc822, inline)]
From: Denis 'GNUtoo' Carikli <GNUtoo <at> cyberdimension.org>
To: bug-guix <at> gnu.org
Subject: Confusing '' error message
Date: Thu, 2 Jul 2020 06:40:45 +0200
[Message part 3 (text/plain, inline)]
Hi,

When doing guix system system.scm /path/to/empty/directory, I have the
following error message:

> # guix system --verbosity=99 --debug=99 --no-bootloader  init
> system.scm /srv/distros/guix/ guile: warning: failed to install locale
> acquiring global GC lock `/var/guix/gc.lock'
> acquiring read lock on `/var/guix/temproots/14408'
> acquiring write lock on `/var/guix/temproots/14408'
[...]
> acquiring write lock on `/var/guix/temproots/14408'
> downgrading to read lock on `/var/guix/temproots/14408'
> Backtrace:
>            1 (primitive-load "/root/.config/guix/current/bin/guix")
> In guix/ui.scm:
>   1949:12  0 (run-guix-command _ . _)
> 
> guix/ui.scm:1949:12: In procedure run-guix-command:
> In procedure struct-vtable: Wrong type argument in position 1
> (expecting struct): #f

so I'm probably doing something wrong here as I'm probably not supposed
to abuse guix system init to create chroots for lxc.

However the issue is that there is no clear error message nor backtrace
telling me what exactly is wrong here. I don't even have a line in my
file that tells me what line is wrong.

I've attached the system.scm used for reference.

Denis.
[system.scm (text/x-scheme, attachment)]
[Message part 5 (application/pgp-signature, inline)]
[Message part 6 (message/rfc822, inline)]
From: Maxim Cournoyer <maxim.cournoyer <at> gmail.com>
To: Ludovic Courtès <ludo <at> gnu.org>
Cc: 42161-done <at> debbugs.gnu.org,
 Denis 'GNUtoo' Carikli <GNUtoo <at> cyberdimension.org>
Subject: Re: bug#42161: Confusing 'guix system' backtrace when root file
 system is missing
Date: Sun, 10 Jan 2021 14:26:21 -0500
Hello Ludovic,

Ludovic Courtès <ludo <at> gnu.org> writes:

> Hi,
>
> Denis 'GNUtoo' Carikli <GNUtoo <at> cyberdimension.org> skribis:
>
>> And again I've the same error:
>>> guix system  --on-error=debug -v3 --no-bootloader init system.scm
>>> /mnt/ guile: warning: failed to install locale
>>> Backtrace:
>>>            1 (primitive-load "/root/.config/guix/current/bin/guix")
>>> In guix/ui.scm:
>>>   1949:12  0 (run-guix-command _ . _)
>>> 
>>> guix/ui.scm:1949:12: In procedure run-guix-command:
>>> In procedure struct-vtable: Wrong type argument in position 1
>>> (expecting struct): #f
>>
>> Is that part of my system.scm really correct:
>>> (file-systems %base-file-systems)
>>
>> I hope that I'm not polluting bugreports for issues that I'm responsible
>> of, but I don't have enough knowledge to know that in advance, and I
>> was advised to bugreport on #guix IRC channel.
>
> Sorry for taking so long to get back to you.  You were right: the root
> cause here is that the ‘file-systems’ field does not specify a root file
> system.
>
> Could you add one and let me know how it goes?
>
> I’ve done two things to improve the situation:
>
>   1. Commit a168c3e4f8d580f70e1c26bcdfc5b8378b2fa42d fixes a
>      longstanding issues where we’d get useless backtraces like the one
>      above in such circumstances.
>
>   2. Commit d7e9e0bbc9aadec3e1830767a8771bfbe9c43155 changes ‘guix
>      system’ so that a “missing root file system” error message is
>      printed in this case.

It seems you've addressed the problem thoroughly, thank you!

Closing,

Maxim


This bug report was last modified 4 years and 187 days ago.

Previous Next


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