From 08c95ba28d5d5c9c96f6d1bdcfb75a04e5177a74 Mon Sep 17 00:00:00 2001 From: Ludovic Courtès Date: Sun, 23 Jun 2019 18:46:53 +0200 Subject: ui: 'show-derivation-outputs' accepts records. * guix/ui.scm (show-derivation-outputs): Handle records. --- guix/ui.scm | 19 +++++++++++++------ 1 file changed, 13 insertions(+), 6 deletions(-) diff --git a/guix/ui.scm b/guix/ui.scm index 630afa47bf..6d243ef041 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))) -- cgit 1.4.1