diff options
author | Ludovic Courtès <ludo@gnu.org> | 2015-12-20 14:42:56 +0100 |
---|---|---|
committer | Ludovic Courtès <ludo@gnu.org> | 2015-12-20 22:34:22 +0100 |
commit | ccda8f7d7f95a9db0e1163857faf74800f368ac1 (patch) | |
tree | 9519f531b856c7b9312679765d7b0362e843c482 | |
parent | aa8e051532a144ce86c13169e08abdd554b9823e (diff) |
profiles: Honor search paths of propagated inputs.
Fixes <http://bugs.gnu.org/22073>.
Reported by Federico Beffa <beffa@ieee.org>.
* guix/profiles.scm (package->manifest-entry): Use
'package-transitive-native-search-paths' when computing
'search-paths' field.
* tests/profiles.scm ("package->manifest-entry, search paths"): New test.
-rw-r--r-- | guix/profiles.scm | 2 | ||||
-rw-r--r-- | tests/profiles.scm | 9 |
2 files changed, 10 insertions, 1 deletions
diff --git a/guix/profiles.scm b/guix/profiles.scm index ce6b2c4f42..ce86ff8e0a 100644 --- a/guix/profiles.scm +++ b/guix/profiles.scm @@ -176,7 +176,7 @@ omitted or #f, use the first output of PACKAGE." (output (or output (car (package-outputs package)))) (item package) (dependencies (delete-duplicates deps)) - (search-paths (package-native-search-paths package))))) + (search-paths (package-transitive-native-search-paths package))))) (define (packages->manifest packages) "Return a list of manifest entries, one for each item listed in PACKAGES. diff --git a/tests/profiles.scm b/tests/profiles.scm index cc9a822cee..e659c2e26d 100644 --- a/tests/profiles.scm +++ b/tests/profiles.scm @@ -32,6 +32,7 @@ #:use-module (ice-9 regex) #:use-module (ice-9 popen) #:use-module (rnrs io ports) + #:use-module (srfi srfi-1) #:use-module (srfi srfi-11) #:use-module (srfi srfi-64)) @@ -224,6 +225,14 @@ (package-native-search-paths packages:guile-2.0))))))))) +(test-assert "package->manifest-entry, search paths" + ;; See <http://bugs.gnu.org/22073>. + (let ((mpl (@ (gnu packages python) python2-matplotlib))) + (lset= eq? + (package-transitive-native-search-paths mpl) + (manifest-entry-search-paths + (package->manifest-entry mpl))))) + (test-assertm "etc/profile" ;; Make sure we get an 'etc/profile' file that at least defines $PATH. (mlet* %store-monad |