diff options
author | Ludovic Courtès <ludo@gnu.org> | 2013-07-12 23:27:35 +0200 |
---|---|---|
committer | Ludovic Courtès <ludo@gnu.org> | 2013-07-12 23:27:35 +0200 |
commit | 2096b516e03cf9741d6e257fbfb4700c169abbd0 (patch) | |
tree | 7864605b293d3b1c1d69dde1667db8d1213e0e2e | |
parent | e14c39291bb55ba336cb3fc2c44224154c8500c0 (diff) | |
download | gnu-guix-2096b516e03cf9741d6e257fbfb4700c169abbd0.tar gnu-guix-2096b516e03cf9741d6e257fbfb4700c169abbd0.tar.gz |
guix package: Fix handling of `-e'.
This fixes a bug whereby a command like
guix package -e '(@@ (gnu packages base) gnu-make-boot0)'
would only succeed when the outputs of that package are available, and
otherwise fail with "/nix/store/... is not valid".
* guix/scripts/package.scm (guix-package)[process-action](package->tuple):
Leave P as is in the result. Move `package->tuple' call from INSTALL*
to INSTALL.
-rw-r--r-- | guix/scripts/package.scm | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/guix/scripts/package.scm b/guix/scripts/package.scm index 25ff008246..68869b4cec 100644 --- a/guix/scripts/package.scm +++ b/guix/scripts/package.scm @@ -703,7 +703,7 @@ more information.~%")) `(,(package-name p) ,(package-version p) ,out - ,path + ,p ,(canonicalize-deps deps)))) (define (show-what-to-remove/install remove install dry-run?) @@ -771,7 +771,7 @@ more information.~%")) upgrade (filter-map (match-lambda (('install . (? package? p)) - #f) + (package->tuple p)) (('install . (? store-path?)) #f) (('install . package) @@ -789,7 +789,7 @@ more information.~%")) (install* (append (filter-map (match-lambda (('install . (? package? p)) - (package->tuple p)) + #f) (('install . (? store-path? path)) (let-values (((name version) (package-name->name+version |