aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLudovic Courtès <ludo@gnu.org>2019-11-30 23:19:45 +0100
committerLudovic Courtès <ludo@gnu.org>2019-12-07 00:59:57 +0100
commit158032bd7dcc33d17da8091b2319bf59ee9db6a1 (patch)
treefdc9f9f8241caceee48683868a0cf3f973123fee
parent60f4564a63316c5655cfd1e01ea2ebfdd9cfb9f1 (diff)
downloadguix-158032bd7dcc33d17da8091b2319bf59ee9db6a1.tar
guix-158032bd7dcc33d17da8091b2319bf59ee9db6a1.tar.gz
guix system: Add "describe" action.
* guix/scripts/system.scm (show-help): Add "describe". (process-command): Handle it. (guix-system): Likewise. * doc/guix.texi (Invoking guix system): Document it.
-rw-r--r--doc/guix.texi4
-rw-r--r--guix/scripts/system.scm11
2 files changed, 14 insertions, 1 deletions
diff --git a/doc/guix.texi b/doc/guix.texi
index 4c2ecd4b84..84548b1b7d 100644
--- a/doc/guix.texi
+++ b/doc/guix.texi
@@ -26301,6 +26301,10 @@ bootloader boot menu:
@table @code
+@item describe
+Describe the current system generation: its file name, the kernel and
+bootloader used, etc., as well as provenance information when available.
+
@item list-generations
List a summary of each generation of the operating system available on
disk, in a human-readable way. This is similar to the
diff --git a/guix/scripts/system.scm b/guix/scripts/system.scm
index 129c248283..3e9570753d 100644
--- a/guix/scripts/system.scm
+++ b/guix/scripts/system.scm
@@ -922,6 +922,8 @@ Some ACTIONS support additional ARGS.\n"))
(display (G_ "\
roll-back switch to the previous operating system configuration\n"))
(display (G_ "\
+ describe describe the current system\n"))
+ (display (G_ "\
list-generations list the system generations\n"))
(display (G_ "\
switch-generation switch to an existing operating system configuration\n"))
@@ -1196,6 +1198,12 @@ argument list and OPTS is the option alist."
((pattern) pattern)
(x (leave (G_ "wrong number of arguments~%"))))))
(list-generations pattern)))
+ ((describe)
+ (match (generation-number %system-profile)
+ (0
+ (error (G_ "no system generation, nothing to describe~%")))
+ (generation
+ (display-system-generation generation))))
((search)
(apply (resolve-subcommand "search") args))
;; The following commands need to use the store, but they do not need an
@@ -1235,7 +1243,8 @@ argument list and OPTS is the option alist."
(case action
((build container vm vm-image disk-image reconfigure init
extension-graph shepherd-graph
- list-generations delete-generations roll-back
+ list-generations describe
+ delete-generations roll-back
switch-generation search docker-image)
(alist-cons 'action action result))
(else (leave (G_ "~a: unknown action~%") action))))))