diff options
author | Ludovic Courtès <ludo@gnu.org> | 2018-07-09 10:44:36 +0200 |
---|---|---|
committer | Ludovic Courtès <ludo@gnu.org> | 2018-07-11 00:52:36 +0200 |
commit | f03df3ee75d1209fb9782999bd04378c58e9f0f1 (patch) | |
tree | 38f3e7590cb02677c4e943e5fbf16cf915e54177 | |
parent | 1dec269176fd809483a751da174c2d5ea66ed58a (diff) | |
download | guix-f03df3ee75d1209fb9782999bd04378c58e9f0f1.tar.gz |
profiles: Factorize 'manifest-search-paths'.
* guix/profiles.scm (manifest-search-paths): New procedure. (profile-derivation)[builder]: Use it. * guix/build/profiles.scm (build-etc/profile): Remove $PATH.
-rw-r--r-- | guix/build/profiles.scm | 2 | ||||
-rw-r--r-- | guix/profiles.scm | 12 |
2 files changed, 11 insertions, 3 deletions
diff --git a/guix/build/profiles.scm b/guix/build/profiles.scm index 819688a913..df785c85a7 100644 --- a/guix/build/profiles.scm +++ b/guix/build/profiles.scm @@ -89,7 +89,7 @@ definitions for all the SEARCH-PATHS." # When GUIX_PROFILE is undefined, the various environment variables refer # to this specific profile generation. \n" port) - (let ((variables (evaluate-search-paths (cons $PATH search-paths) + (let ((variables (evaluate-search-paths search-paths (list output)))) (for-each (write-environment-variable-definition port) (map (abstract-profile output) variables)))))) diff --git a/guix/profiles.scm b/guix/profiles.scm index e6b77e8d38..88228f1558 100644 --- a/guix/profiles.scm +++ b/guix/profiles.scm @@ -91,6 +91,7 @@ manifest-lookup manifest-installed? manifest-matching-entries + manifest-search-paths manifest-transaction manifest-transaction? @@ -545,6 +546,14 @@ no match.." (filter matches? (manifest-entries manifest))) +(define (manifest-search-paths manifest) + "Return the list of search path specifications that apply to MANIFEST, +including the search path specification for $PATH." + (delete-duplicates + (cons $PATH + (append-map manifest-entry-search-paths + (manifest-entries manifest))))) + ;;; ;;; Manifest transactions. @@ -1367,8 +1376,7 @@ are cross-built for TARGET." (map sexp->search-path-specification (delete-duplicates '#$(map search-path-specification->sexp - (append-map manifest-entry-search-paths - (manifest-entries manifest)))))) + (manifest-search-paths manifest))))) (build-profile #$output '#$inputs #:symlink #$(if relative-symlinks? |