summary refs log tree commit diff
path: root/guix/config.scm.in
diff options
context:
space:
mode:
authorLudovic Courtès <ludo@gnu.org>2021-01-27 14:46:10 +0100
committerLudovic Courtès <ludo@gnu.org>2021-02-04 09:23:39 +0100
commit316fc2acbb112bfa572ae30f95a93bcd56621234 (patch)
tree88b313298e8adba90c87be3358b3d694cd7a8399 /guix/config.scm.in
parent814ee99da89a0bcc6cf53d61763d345ed95e067c (diff)
downloadguix-316fc2acbb112bfa572ae30f95a93bcd56621234.tar.gz
channels: Record 'guix' channel metadata in (guix config).
Partially fixes <https://bugs.gnu.org/45896>.

* guix/config.scm.in (%channel-metadata): New variable.
* guix/describe.scm (channel-metadata): Use it.
(current-channels): New procedure.
(current-profile-entries): Clarify docstring.
* guix/self.scm (compiled-guix): Add #:channel-metadata and pass it to
'make-config.scm'.
(make-config.scm): Add #:channel-metadata and define '%channel-metadata'
in the generated file.
(guix-derivation): Add #:channel-metadata and pass it to 'compiled-guix'.
* guix/channels.scm (build-from-source): Replace 'name', 'source', and
'commit' parameters with 'instance'.  Pass #:channel-metadata to BUILD.
(build-channel-instance): Adjust accordingly.
* build-aux/build-self.scm (build-program): Add #:channel-metadata
and pass it to 'guix-derivation'.
(build): Add #:channel-metadata and pass it to 'build-program'.
* guix/scripts/describe.scm (display-profile-info): Add optional
'channels' parameter.  Pass it to 'display-profile-content'.
(display-profile-content): Add optional 'channels' parameter and honor
it.  Iterate on CHANNELS rather than on the manifest entries of
PROFILE.
(guix-describe): When PROFILE is #f, call 'current-channels' and pass it
to 'display-profile-info', unless it returns the empty list.
Diffstat (limited to 'guix/config.scm.in')
-rw-r--r--guix/config.scm.in11
1 files changed, 10 insertions, 1 deletions
diff --git a/guix/config.scm.in b/guix/config.scm.in
index b2901735d8..223c9eb418 100644
--- a/guix/config.scm.in
+++ b/guix/config.scm.in
@@ -1,5 +1,5 @@
 ;;; GNU Guix --- Functional package management for GNU
-;;; Copyright © 2012, 2013, 2014, 2015, 2016, 2018, 2019 Ludovic Courtès <ludo@gnu.org>
+;;; Copyright © 2012, 2013, 2014, 2015, 2016, 2018, 2019, 2021 Ludovic Courtès <ludo@gnu.org>
 ;;; Copyright © 2017 Caleb Ristvedt <caleb.ristvedt@cune.org>
 ;;;
 ;;; This file is part of GNU Guix.
@@ -23,6 +23,8 @@
             %guix-bug-report-address
             %guix-home-page-url
 
+            %channel-metadata
+
             %storedir
             %localstatedir
             %sysconfdir
@@ -56,6 +58,13 @@
 (define %guix-home-page-url
   "@PACKAGE_URL@")
 
+(define %channel-metadata
+  ;; When true, this is an sexp containing metadata for the 'guix' channel
+  ;; this file was built from.  This is used by (guix describe).
+
+  ;; TODO: Implement 'configure.ac' machinery to initialize it.
+  #f)
+
 (define %storedir
   "@storedir@")