guix system: 'list-generation' correctly displays file system labels.

* guix/scripts/system.scm (display-system-generation): Correctly display
file system labels.  Previously, starting from commit
a5acc17a3c, it'd print #<file-system-label "foo">.
This commit is contained in:
Ludovic Courtès 2018-06-20 15:19:52 +02:00
parent 378daa8cb6
commit e203f4c26a
No known key found for this signature in database
GPG key ID: 090B11993D9AEBB5

View file

@ -551,10 +551,26 @@ (define* (display-system-generation number
;; TRANSLATORS: Please preserve the two-space indentation.
(format #t (G_ " label: ~a~%") label)
(format #t (G_ " bootloader: ~a~%") bootloader-name)
(format #t (G_ " root device: ~a~%")
(if (uuid? root-device)
(uuid->string root-device)
root-device))
;; TRANSLATORS: The '~[', '~;', and '~]' sequences in this string must
;; be preserved. They denote conditionals, such that the result will
;; look like:
;; root device: UUID: 12345-678
;; or:
;; root device: label: "my-root"
;; or just:
;; root device: /dev/sda3
(format #t (G_ " root device: ~[UUID: ~a~;label: ~s~;~a~]~%")
(cond ((uuid? root-device) 0)
((file-system-label? root-device) 1)
(else 2))
(cond ((uuid? root-device)
(uuid->string root-device))
((file-system-label? root-device)
(file-system-label->string root-device))
(else
root-device)))
(format #t (G_ " kernel: ~a~%") kernel))))
(define* (list-generations pattern #:optional (profile %system-profile))