"home configuration" generated by "guix home import" does not lead to a reproducible home environment

  • Open
  • quality assurance status badge
Details
One participant
  • Maxime Devos
Owner
unassigned
Submitted by
Maxime Devos
Severity
normal
M
M
Maxime Devos wrote on 2 Oct 2021 22:11
(address . bug-guix@gnu.org)
bc83fd410f7b46078f58790e5e663c4213568edf.camel@telenet.be
Hi,

I ran "guix home import". The output seems mostly reasonable, but the use
of 'local-file' seems troublesome:

;; [comments]
(use-modules [modules])

(home-environment
(packages [stuff])
(services
(list (service
home-bash-service-type
(home-bash-configuration
(bashrc
(list (slurp-file-gexp
(local-file "/home/[USER]/.bashrc"))))
(bash-profile
(list (slurp-file-gexp
(local-file "/home/[USER]/.bash_profile")))))))))

IIUC, when I will run "guix home reconfigure", guix home will intern
~/.bashrc and ~/.bash_profile in the store, build things, and eventually
replace ~/.bashrc with some symlink to something in the store.

I assume this technically all works out, but this seems a bit irreproducible.
What I made modifications to ~/.bash_profile? It seems like, if I run "guix home reconfigure"
on the same system, the modifications will be preserved, which is fine. However,
what if I log into another system, copy the home configuration, and run "guix home reconfigure"
from there? Then "guix home reconfigure" would pick up the ~/.bash_profile from the new system
(without the modifications) instead of the old system, right?

Then the home configuration generated by "guix home import" isn't self-contained,
which seems unfortunate.

Two proposals for addressing the issue:

(1) Use 'plain-file' instead of 'local-file', to include the contents of ~/.bashrc inside
the generated configuration

(2) Let "guix home import" create a directory with the "home-environment.scm", ".bashrc"
and ".bash_profile".

Greetings,
Maxime
-----BEGIN PGP SIGNATURE-----

iI0EABYKADUWIQTB8z7iDFKP233XAR9J4+4iGRcl7gUCYVi8+xccbWF4aW1lZGV2
b3NAdGVsZW5ldC5iZQAKCRBJ4+4iGRcl7nPIAP4tIPELy5C6NybbLAGcauZ4lmCU
5o3/k8v+CtytrvBR+QD/Vyo9mNk4nu+e+HFfUCMsNfPD4xGm8W7ozvMCxw53pgE=
=bGVF
-----END PGP SIGNATURE-----


?
Your comment

Commenting via the web interface is currently disabled.

To comment on this conversation send an email to 50979@debbugs.gnu.org

To respond to this issue using the mumi CLI, first switch to it
mumi current 50979
Then, you may apply the latest patchset in this issue (with sign off)
mumi am -- -s
Or, compose a reply to this issue
mumi compose
Or, send patches to this issue
mumi send-email *.patch