diff --git a/guix/scripts/package.scm b/guix/scripts/package.scm index 7f53af772ffb23740b7fa5c215de0e37533543be..15f3e13cc13e2c214c70e8546cde027e88eca9f4 100644 --- a/guix/scripts/package.scm +++ b/guix/scripts/package.scm @@ -389,7 +389,8 @@ (define* (search-path-environment-variables entries profile ;; TODO: Offer the choice between exact/prefix/suffix. (environment-variable-definition variable value #:separator sep)))) - (evaluate-search-paths search-paths profile getenv)))) + (evaluate-search-paths search-paths (list profile) + getenv)))) (define (display-search-paths entries profile) "Display the search path environment variables that may need to be set for diff --git a/guix/search-paths.scm b/guix/search-paths.scm index 154e508d5bec8a6efe54a53288e8254eb01b2a19..9dfad8916908ea63031116270a282d9140472100 100644 --- a/guix/search-paths.scm +++ b/guix/search-paths.scm @@ -114,11 +114,12 @@ (define len (else (reverse (cons string result)))))) -(define* (evaluate-search-paths search-paths directory +(define* (evaluate-search-paths search-paths directories #:optional (getenv (const #f))) - "Evaluate SEARCH-PATHS, a list of search-path specifications, for DIRECTORY, -and return a list of specification/value pairs. Use GETENV to determine the -current settings and report only settings not already effective." + "Evaluate SEARCH-PATHS, a list of search-path specifications, for +DIRECTORIES, a list of directory names, and return a list of +specification/value pairs. Use GETENV to determine the current settings and +report only settings not already effective." (define search-path-definition (match-lambda ((and spec @@ -137,7 +138,7 @@ (define search-path-definition ;; directories (see ;; <http://lists.gnu.org/archive/html/guix-devel/2015-01/msg00269.html>.) (path (with-null-error-port - (search-path-as-list files (list directory) + (search-path-as-list files directories #:type type #:pattern pattern)))) (if (every (cut member <> values) path)