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.master
parent
e14c39291b
commit
2096b516e0
|
@ -703,7 +703,7 @@ more information.~%"))
|
||||||
`(,(package-name p)
|
`(,(package-name p)
|
||||||
,(package-version p)
|
,(package-version p)
|
||||||
,out
|
,out
|
||||||
,path
|
,p
|
||||||
,(canonicalize-deps deps))))
|
,(canonicalize-deps deps))))
|
||||||
|
|
||||||
(define (show-what-to-remove/install remove install dry-run?)
|
(define (show-what-to-remove/install remove install dry-run?)
|
||||||
|
@ -771,7 +771,7 @@ more information.~%"))
|
||||||
upgrade
|
upgrade
|
||||||
(filter-map (match-lambda
|
(filter-map (match-lambda
|
||||||
(('install . (? package? p))
|
(('install . (? package? p))
|
||||||
#f)
|
(package->tuple p))
|
||||||
(('install . (? store-path?))
|
(('install . (? store-path?))
|
||||||
#f)
|
#f)
|
||||||
(('install . package)
|
(('install . package)
|
||||||
|
@ -789,7 +789,7 @@ more information.~%"))
|
||||||
(install* (append
|
(install* (append
|
||||||
(filter-map (match-lambda
|
(filter-map (match-lambda
|
||||||
(('install . (? package? p))
|
(('install . (? package? p))
|
||||||
(package->tuple p))
|
#f)
|
||||||
(('install . (? store-path? path))
|
(('install . (? store-path? path))
|
||||||
(let-values (((name version)
|
(let-values (((name version)
|
||||||
(package-name->name+version
|
(package-name->name+version
|
||||||
|
|
Reference in New Issue