GNU bug report logs - #54631
Unable to determine system origin when configuration stored in guix channel

Previous Next

Package: guix;

Reported by: "Collin J. Doering" <collin <at> rekahsoft.ca>

Date: Wed, 30 Mar 2022 02:06:01 UTC

Severity: normal

Full log


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

From: Liliana Marie Prikler <liliana.prikler <at> ist.tugraz.at>
To: "Collin J. Doering" <collin <at> rekahsoft.ca>, 54631 <at> debbugs.gnu.org
Subject: Re: Unable to determine system origin when configuration stored in
 guix channel
Date: Wed, 30 Mar 2022 07:56:14 +0200
Am Dienstag, dem 29.03.2022 um 22:03 -0400 schrieb Collin J. Doering:
> [...]
> Notice how there is no way to see which configuration was used to
> create the system.
The key here is that you're using a configuration expression rather
than a file.  Were you to write those files to disk in let's say
config-a.scm and config-b.scm respectively and refer to them on the
command line like that, you'd have a configuration file guix could
refer to.

Alternatively, Guix could take the expression specified via -e and
write it to disk.  Note that some configuration files are meaningless
even if written to disk, for example...

> The second issue is that when `-L|--load-path` is used along with
> either a file or expression to specify the operating-system or home-
> configuration, it essentially 'tarnishes' the provenance of the
> system, in that the following deployment is not differentiable from
> the preceding one/s, despite them being different.
> 
> --8<---------------cut here---------------start------------->8---
> sudo -i guix system reconfigure -L my-local-channel-but-with-changes
> -e '(@ (my config system-a) %system)'
> --8<---------------cut here---------------end--------------->8---
> 
> --8<---------------cut here---------------start------------->8---
> ➜ guix system describe        
> Generation 32   Mar 28 2022 23:10:01    (current)
>   file name: /var/guix/profiles/system-32-link
>   canonical file name: /gnu/store/s1f82wy0mj1zv3jvrzzc86h86zrdv336-
> system
>   label: GNU with Linux 5.16.16
>   bootloader: grub-efi
>   root device: label: "root"
>   kernel: /gnu/store/s1f82wy0mj1zv3jvrzzc86h86zrdv336-linux-
> 5.16.16/bzImage
>   channels:
>     guix:
>       repository URL: https://git.savannah.gnu.org/git/guix.git
>       branch: master
>       commit: e584a093f943be216fdc93895281fde835836b8d
>     my-config-channel:
>       repository URL: https://not-yet-on-the-internet.com
>       branch: master
>       commit: 918a3bf799038a019c7394cda480ee67db8a0009
> --8<---------------cut here---------------end--------------->8---
LOAD_PATH tweaking should be considered harmful and void your
provenance, at least w.r.t. channels.  There's no sane way for guix to
check whether the load paths you added still exist after
reconfiguration, other than placing the entire directory in the store.

Cheers




This bug report was last modified 3 years and 77 days ago.

Previous Next


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