mirror of
https://codeberg.org/guix/guix.git
synced 2025-10-02 02:15:12 +00:00
pack: Singularity environemt sources the profile's 'etc/profile'.
Fixes #419 where the same search path is used multiple times, leading to the last one overriding the previous one. The solution relies on the #$profile/etc/profile file that is already verified and in case of errors, it is just one place to repair instead of repairing at multiple places, like in singularity-environment-file * guix/pack.scm (singularity-environment-file): Source #$profile/etc/profile Reported-by: Alexis Simon <alexis.simon@runbox.com> Change-Id: Ic304fef99ad34d83e4e10cdd2b26d3b1802b5251 Signed-off-by: Ludovic Courtès <ludo@gnu.org>
This commit is contained in:
parent
1f1b65ddbc
commit
65bb0d92d8
1 changed files with 5 additions and 18 deletions
|
@ -312,25 +312,12 @@ added to the pack."
|
|||
"Return a shell script that defines the environment variables corresponding
|
||||
to the search paths of PROFILE."
|
||||
(define build
|
||||
(with-extensions (list guile-gcrypt)
|
||||
(with-imported-modules `(((guix config) => ,(make-config.scm))
|
||||
,@(source-module-closure
|
||||
`((guix profiles)
|
||||
(guix search-paths))
|
||||
#:select? not-config?))
|
||||
#~(begin
|
||||
(use-modules (guix profiles) (guix search-paths)
|
||||
(ice-9 match))
|
||||
#~(begin
|
||||
(use-modules (ice-9 match))
|
||||
|
||||
(call-with-output-file #$output
|
||||
(lambda (port)
|
||||
(for-each (match-lambda
|
||||
((spec . value)
|
||||
(format port "~a=~a~%export ~a~%"
|
||||
(search-path-specification-variable spec)
|
||||
value
|
||||
(search-path-specification-variable spec))))
|
||||
(profile-search-paths #$profile))))))))
|
||||
(call-with-output-file #$output
|
||||
(lambda (port)
|
||||
(format port ". ~a/etc/profile~%" #$profile)))))
|
||||
|
||||
(computed-file "singularity-environment.sh" build))
|
||||
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue