summaryrefslogtreecommitdiff
path: root/build-aux/build-self.scm
diff options
context:
space:
mode:
authorLeo Famulari <leo@famulari.name>2021-02-09 15:09:43 -0500
committerLeo Famulari <leo@famulari.name>2021-02-09 15:09:43 -0500
commit388bd35dd0df2d231bc2cce3746d7d5fd15df23a (patch)
tree82e7cc45b8279f83439214c7c79dc7161ffda94d /build-aux/build-self.scm
parentf1c7c2f697877fcb68b53ea062ff8a88f274a2fe (diff)
parentd00380b0077b0df2a0b790bb115d07c1533b8863 (diff)
downloadguix-patches-388bd35dd0df2d231bc2cce3746d7d5fd15df23a.tar
guix-patches-388bd35dd0df2d231bc2cce3746d7d5fd15df23a.tar.gz
Merge branch 'master' into staging-next
Diffstat (limited to 'build-aux/build-self.scm')
-rw-r--r--build-aux/build-self.scm14
1 files changed, 11 insertions, 3 deletions
diff --git a/build-aux/build-self.scm b/build-aux/build-self.scm
index 4b6e2bfae5..6a3b9c83d4 100644
--- a/build-aux/build-self.scm
+++ b/build-aux/build-self.scm
@@ -1,5 +1,5 @@
;;; GNU Guix --- Functional package management for GNU
-;;; Copyright © 2014, 2016, 2017, 2018, 2019, 2020 Ludovic Courtès <ludo@gnu.org>
+;;; Copyright © 2014, 2016, 2017, 2018, 2019, 2020, 2021 Ludovic Courtès <ludo@gnu.org>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -241,12 +241,15 @@ interface (FFI) of Guile.")
(define* (build-program source version
#:optional (guile-version (effective-version))
- #:key (pull-version 0))
+ #:key (pull-version 0) (channel-metadata #f))
"Return a program that computes the derivation to build Guix from SOURCE."
(define select?
;; Select every module but (guix config) and non-Guix modules.
+ ;; Also exclude (guix channels): it is autoloaded by (guix describe), but
+ ;; only for peripheral functionality.
(match-lambda
(('guix 'config) #f)
+ (('guix 'channels) #f)
(('guix _ ...) #t)
(('gnu _ ...) #t)
(_ #f)))
@@ -356,6 +359,8 @@ interface (FFI) of Guile.")
(run-with-store store
(guix-derivation source version
#$guile-version
+ #:channel-metadata
+ '#$channel-metadata
#:pull-version
#$pull-version)
#:system system)
@@ -377,7 +382,9 @@ interface (FFI) of Guile.")
;; The procedure below is our return value.
(define* (build source
- #:key verbose? (version (date-version-string)) system
+ #:key verbose?
+ (version (date-version-string)) channel-metadata
+ system
(pull-version 0)
;; For the standalone Guix, default to Guile 3.0. For old
@@ -394,6 +401,7 @@ files."
;; Build the build program and then use it as a trampoline to build from
;; SOURCE.
(mlet %store-monad ((build (build-program source version guile-version
+ #:channel-metadata channel-metadata
#:pull-version pull-version))
(system (if system (return system) (current-system)))
(home -> (getenv "HOME"))