From 2096b516e03cf9741d6e257fbfb4700c169abbd0 Mon Sep 17 00:00:00 2001 From: Ludovic Courtès Date: Fri, 12 Jul 2013 23:27:35 +0200 Subject: 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. --- guix/scripts/package.scm | 6 +++--- 1 file 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 @@ (define (package->tuple p) `(,(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 @@ (define (show-what-to-remove/install remove install dry-run?) upgrade (filter-map (match-lambda (('install . (? package? p)) - #f) + (package->tuple p)) (('install . (? store-path?)) #f) (('install . package) @@ -789,7 +789,7 @@ (define (show-what-to-remove/install remove install dry-run?) (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 -- cgit v1.2.3