--- Begin Message ---
Subject: |
The home-environment example on Guix manual has an error |
Date: |
Sat, 06 Nov 2021 09:50:34 -0300 |
User-agent: |
mu4e 1.6.5; emacs 27.2 |
Hi,
the example present in the 11.1 section of the guix manual ((guix)
Declaring the Home Environment) uses a list of strings in the
bash-profile field of home-bash-configuration, which is incorrect,
as it
expects a list of file-like objects.
The example is as follows:
(use-modules (gnu home)
(gnu home services)
(gnu home services shells)
(gnu services)
(gnu packages admin)
(guix gexp))
(home-environment
(packages (list htop))
(services
(list
(service home-bash-service-type
(home-bash-configuration
(guix-defaults? #t)
(bash-profile '("\
export HISTFILE=$XDG_CACHE_HOME/.bash_history"))))
(simple-service 'test-config
home-files-service-type
(list `("config/test.conf"
,(plain-file "tmp-file.txt"
"the content of
~/.config/test.conf")))))))
Running "guix home build" with a file containing this returns this
error:
building
/gnu/store/cvmpzmvb0p73dvbf813rcmpplj6fnbk8-bash_profile.drv...
Backtrace:
8 (primitive-load
"/gnu/store/w6nikzvdk66d1b8x579ra0vz0wl?")
In ice-9/ports.scm:
463:17 7 (call-with-output-file _ _ #:binary _ #:encoding _)
In ice-9/eval.scm:
159:9 6 (_ #(#(#<directory (guile-user) 7ffff3bb3f00>)
#<outp?>))
163:9 5 (_ #(#(#<directory (guile-user) 7ffff3bb3f00>)
#<outp?>))
155:9 4 (_ #(#(#<directory (guile-user) 7ffff3bb3f00>)
#<outp?>))
159:9 3 (_ #(#(#<directory (guile-user) 7ffff3bb3f00>)
#<outp?>))
In ice-9/boot-9.scm:
152:2 2 (with-fluid* _ _ _)
In ice-9/ports.scm:
440:11 1 (call-with-input-file " export
HISTFILE=$XDG_CACHE?" ?)
In unknown file:
0 (open-file " export
HISTFILE=$XDG_CACHE_HOME/.bash?" ?)
ERROR: In procedure open-file:
In procedure open-file: No such file or directory: " export
HISTFILE=$XDG_CACHE_HOME/.bash_history"
builder for
`/gnu/store/cvmpzmvb0p73dvbf813rcmpplj6fnbk8-bash_profile.drv'
failed with exit code 1
I believe it should be changed to something like this:
(use-modules (gnu home)
(gnu home services)
(gnu home services shells)
(gnu services)
(gnu packages admin)
(guix gexp))
(home-environment
(packages (list htop))
(services
(list
(service home-bash-service-type
(home-bash-configuration
(guix-defaults? #t)
(bash-profile (list (plain-file "bash-profile" "\
export HISTFILE=$XDG_CACHE_HOME/.bash_history")))))
(simple-service 'test-config
home-files-service-type
(list `("config/test.conf"
,(plain-file "tmp-file.txt"
"the content of
~/.config/test.conf")))))))
This manages to build correctly.
Greetings,
Luis
--
Luis H. Higino
--- End Message ---
--- Begin Message ---
Subject: |
Re: bug#51639: The home-environment example on Guix manual has an error |
Date: |
Fri, 10 Jun 2022 11:24:11 +0200 |
User-agent: |
Gnus/5.13 (Gnus v5.13) Emacs/28.1 (gnu/linux) |
Hi,
Andrew Tropin <andrew@trop.in> skribis:
> From b1b448078a5382caf906c84064094f25aef7c689 Mon Sep 17 00:00:00 2001
> From: Andrew Tropin <andrew@trop.in>
> Date: Fri, 10 Jun 2022 10:08:24 +0300
> Subject: [PATCH] doc: Update example of a minimalistic home environment.
>
> * doc/he-config-bare-bones.scm: Adujst example according to changes in
> bash-service-type and home-files-service-type.
Applied, thanks!
Ludo’.
--- End Message ---