guix-commits
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

14/15: ui: 'show-derivation-outputs' accepts <derivation-input> records.


From: guix-commits
Subject: 14/15: ui: 'show-derivation-outputs' accepts <derivation-input> records.
Date: Thu, 27 Jun 2019 05:15:47 -0400 (EDT)

civodul pushed a commit to branch master
in repository guix.

commit 08c95ba28d5d5c9c96f6d1bdcfb75a04e5177a74
Author: Ludovic Courtès <address@hidden>
Date:   Sun Jun 23 18:46:53 2019 +0200

    ui: 'show-derivation-outputs' accepts <derivation-input> records.
    
    * guix/ui.scm (show-derivation-outputs): Handle <derivation-input>
    records.
---
 guix/ui.scm | 19 +++++++++++++------
 1 file changed, 13 insertions(+), 6 deletions(-)

diff --git a/guix/ui.scm b/guix/ui.scm
index 630afa4..6d243ef 100644
--- a/guix/ui.scm
+++ b/guix/ui.scm
@@ -777,12 +777,19 @@ error."
             str))))
 
 (define (show-derivation-outputs derivation)
-  "Show the output file names of DERIVATION."
-  (format #t "~{~a~%~}"
-          (map (match-lambda
-                 ((out-name . out)
-                  (derivation->output-path derivation out-name)))
-               (derivation-outputs derivation))))
+  "Show the output file names of DERIVATION, which can be a derivation or a
+derivation input."
+  (define (show-outputs derivation outputs)
+    (format #t "~{~a~%~}"
+            (map (cut derivation->output-path derivation <>)
+                 outputs)))
+
+  (match derivation
+    ((? derivation?)
+     (show-outputs derivation (derivation-output-names derivation)))
+    ((? derivation-input? input)
+     (show-outputs (derivation-input-derivation input)
+                   (derivation-input-sub-derivations input)))))
 
 (define* (check-available-space need
                                 #:optional (directory (%store-prefix)))



reply via email to

[Prev in Thread] Current Thread [Next in Thread]