diff options
author | Ludovic Courtès <ludo@gnu.org> | 2020-03-24 14:38:28 +0100 |
---|---|---|
committer | Ludovic Courtès <ludo@gnu.org> | 2020-03-24 15:44:45 +0100 |
commit | 8465f1f680ee67c2cca265d1c5871b46284f55f9 (patch) | |
tree | 1c599b1389e1eaca51ebe5d84e1f8070801050e0 | |
parent | 3e5ab0a7a9399bb098b9ced46bf3cbf4085c6bab (diff) | |
download | guix-8465f1f680ee67c2cca265d1c5871b46284f55f9.tar.gz |
ui: 'show-manifest-transaction' tabulates package lists for install/remove.
It also removes the store file name from the output. * guix/ui.scm (show-manifest-transaction)[package-strings]: Rewrite to use 'tabulate'. Remove 'item' parameter and adjust callers.
-rw-r--r-- | guix/ui.scm | 21 |
1 files changed, 10 insertions, 11 deletions
diff --git a/guix/ui.scm b/guix/ui.scm index 2dd9ba9673..1e24fe5dca 100644 --- a/guix/ui.scm +++ b/guix/ui.scm @@ -1144,15 +1144,14 @@ separator between subsequent columns." (define* (show-manifest-transaction store manifest transaction #:key dry-run?) "Display what will/would be installed/removed from MANIFEST by TRANSACTION." - (define (package-strings name version output item) - (map (lambda (name version output item) - (format #f " ~a~:[:~a~;~*~]\t~a\t~a" - name - (equal? output "out") output version - (if (package? item) - (package-output store item output) - item))) - name version output item)) + (define (package-strings names versions outputs) + (tabulate (zip (map (lambda (name output) + (if (string=? output "out") + name + (string-append name ":" output))) + names outputs) + versions) + #:initial-indent 3)) (define → ;an arrow that can be represented on stderr (right-arrow (current-error-port))) @@ -1175,7 +1174,7 @@ separator between subsequent columns." (match remove ((($ <manifest-entry> name version output item) ..1) (let ((len (length name)) - (remove (package-strings name version output item))) + (remove (package-strings name version output))) (if dry-run? (format (current-error-port) (N_ "The following package would be removed:~%~{~a~%~}~%" @@ -1228,7 +1227,7 @@ separator between subsequent columns." (match install ((($ <manifest-entry> name version output item _) ..1) (let ((len (length name)) - (install (package-strings name version output item))) + (install (package-strings name version output))) (if dry-run? (format (current-error-port) (N_ "The following package would be installed:~%~{~a~%~}~%" |