From 369149995cd4cedc59f1576a23c4df432e682402 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ludovic=20Court=C3=A8s?= Date: Tue, 5 May 2015 13:55:03 +0200 Subject: [PATCH] search-paths: 'evaluate-search-paths' can be passed a list of directories. * guix/search-paths.scm (evaluate-search-paths): Change 'directory' to 'directories', and adjust 'search-path-as-list' accordingly. * guix/scripts/package.scm (search-path-environment-variables): Adjust call accordingly. --- guix/scripts/package.scm | 3 ++- guix/search-paths.scm | 11 ++++++----- 2 files changed, 8 insertions(+), 6 deletions(-) diff --git a/guix/scripts/package.scm b/guix/scripts/package.scm index 7f53af772f..15f3e13cc1 100644 --- a/guix/scripts/package.scm +++ b/guix/scripts/package.scm @@ -389,7 +389,8 @@ current settings and report only settings not already effective." ;; 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 154e508d5b..9dfad89169 100644 --- a/guix/search-paths.scm +++ b/guix/search-paths.scm @@ -114,11 +114,12 @@ like `string-tokenize', but SEPARATOR is a string." (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 @@ current settings and report only settings not already effective." ;; directories (see ;; .) (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)