diff options
author | Ludovic Courtès <ludo@gnu.org> | 2021-05-09 17:22:24 +0200 |
---|---|---|
committer | Ludovic Courtès <ludo@gnu.org> | 2021-05-09 23:46:46 +0200 |
commit | 8a154c29151fc445e8d0364f507f6e200de1e700 (patch) | |
tree | bca633357bf0f0648e35268db00f50b1800b37b8 /guix/scripts | |
parent | 9562a2eb6162ea6712fe31529c30002a83313dd8 (diff) |
describe: Gracefully handle profiles that lack provenance info.
Fixes <https://bugs.gnu.org/48313>.
Previously, 'current-channels' would return the empty list when
'current-profile' is true but the profile lacks provenance info.
* guix/describe.scm (current-channels)[build-time-metadata]: New
procedure. Call it when 'manifest-entry-channel' returns #f for all of
ENTRIES.
* guix/scripts/describe.scm (guix-describe): When PROFILE is true, pass
third argument to 'display-profile-info'.
Diffstat (limited to 'guix/scripts')
-rw-r--r-- | guix/scripts/describe.scm | 9 |
1 files changed, 8 insertions, 1 deletions
diff --git a/guix/scripts/describe.scm b/guix/scripts/describe.scm index b5f6249176..a3e3338f7e 100644 --- a/guix/scripts/describe.scm +++ b/guix/scripts/describe.scm @@ -301,4 +301,11 @@ text. The hyperlink links to a web view of COMMIT, when available." (channels (display-profile-info #f format channels)))) (profile - (display-profile-info (canonicalize-profile profile) format)))))) + ;; For the current profile, resort to 'current-channels', which has a + ;; fallback to metadata from (guix config) in case PROFILE lacks it. + (let ((channels (if (and (current-profile) + (string=? profile (current-profile))) + (current-channels) + (profile-channels profile)))) + (display-profile-info (canonicalize-profile profile) + format channels))))))) |