summary refs log tree commit diff
path: root/guix/scripts/package.scm
diff options
context:
space:
mode:
Diffstat (limited to 'guix/scripts/package.scm')
-rw-r--r--guix/scripts/package.scm14
1 files changed, 7 insertions, 7 deletions
diff --git a/guix/scripts/package.scm b/guix/scripts/package.scm
index 25ec63c772..5c6a118560 100644
--- a/guix/scripts/package.scm
+++ b/guix/scripts/package.scm
@@ -648,15 +648,15 @@ Install, remove, or upgrade PACKAGES in a single transaction.\n"))
       (delete-duplicates deps same?))
 
     (define (package->tuple p)
-      (let ((path (package-derivation (%store) p))
-            (deps (package-transitive-propagated-inputs p)))
+      ;; Convert package P to a tuple.
+      ;; When given a package via `-e', install the first of its
+      ;; outputs (XXX).
+      (let* ((out  (car (package-outputs p)))
+             (path (package-output (%store) p out))
+             (deps (package-transitive-propagated-inputs p)))
         `(,(package-name p)
           ,(package-version p)
-
-          ;; When given a package via `-e', install the first of its
-          ;; outputs (XXX).
-          ,(car (package-outputs p))
-
+          ,out
           ,path
           ,(canonicalize-deps deps))))