~ruther/guix-local

2096b516e03cf9741d6e257fbfb4700c169abbd0 — Ludovic Courtès 12 years ago e14c392
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.
1 files changed, 3 insertions(+), 3 deletions(-)

M guix/scripts/package.scm
M guix/scripts/package.scm => guix/scripts/package.scm +3 -3
@@ 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