From 791069737c8c51582cc021438dae32eb0fb7b8e0 Mon Sep 17 00:00:00 2001 From: Ludovic Courtès Date: Tue, 15 Feb 2022 16:56:14 +0100 Subject: guix system: Fix 'describe' when booting the latest generation. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Fixes a regression introduced in 9679123ce083c69cdfd1505d95a4066d41280394, whereby 'guix system describe' would error out when /run/current-system points to /gnu/store/…-system, which is the case when booting the latest generation or after reconfigure. * guix/scripts/system.scm (process-command): For 'describe'. Try 'generation-number' with and without the optional argument. --- guix/scripts/system.scm | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/guix/scripts/system.scm b/guix/scripts/system.scm index 430815902d..a6e717d52c 100644 --- a/guix/scripts/system.scm +++ b/guix/scripts/system.scm @@ -1328,9 +1328,17 @@ (define-syntax-rule (with-store* store exp ...) (x (leave (G_ "wrong number of arguments~%")))))) (list-generations pattern))) ((describe) + ;; Describe the running system, which is not necessarily the current + ;; generation. /run/current-system might point to + ;; /var/guix/profiles/system-N-link, or it might point directly to + ;; /gnu/store/…-system. Try both. (match (generation-number "/run/current-system" %system-profile) (0 - (leave (G_ "no system generation, nothing to describe~%"))) + (match (generation-number %system-profile) + (0 + (leave (G_ "no system generation, nothing to describe~%"))) + (generation + (display-system-generation generation)))) (generation (display-system-generation generation)))) ((search) -- cgit v1.2.3