diff options
author | Ludovic Courtès <ludo@gnu.org> | 2024-03-21 23:38:04 +0100 |
---|---|---|
committer | Ludovic Courtès <ludo@gnu.org> | 2024-04-05 18:21:23 +0200 |
commit | d6a3818761736449a27eb44938537798f6f4e85b (patch) | |
tree | 9e5d4ca5bcd21bb7ea1c34a6be9059ba84b88af8 /guix | |
parent | 69b8feabcf838ce935e914db653e275c0c4f562f (diff) | |
download | guix-d6a3818761736449a27eb44938537798f6f4e85b.tar guix-d6a3818761736449a27eb44938537798f6f4e85b.tar.gz |
build-system/channel: Add support for additional channels.
Until now, ‘channel-build-system’ would assume a single channel, the
‘guix’ channel. This change lets users specify additional channels
using the #:channels parameter.
* guix/build-system/channel.scm (build-channels): Add #:channels and
honor it.
(channel-build-system): In ‘lower’, add #:channels and honor it.
* doc/guix.texi (Build Systems): Document it.
Change-Id: I36c1d19cbeee02a4d1144de089b78df0390774a0
Diffstat (limited to 'guix')
-rw-r--r-- | guix/build-system/channel.scm | 7 |
1 files changed, 5 insertions, 2 deletions
diff --git a/guix/build-system/channel.scm b/guix/build-system/channel.scm index 6ad377f930..0607dcf4d7 100644 --- a/guix/build-system/channel.scm +++ b/guix/build-system/channel.scm @@ -1,5 +1,5 @@ ;;; GNU Guix --- Functional package management for GNU -;;; Copyright © 2019-2022 Ludovic Courtès <ludo@gnu.org> +;;; Copyright © 2019-2022, 2024 Ludovic Courtès <ludo@gnu.org> ;;; ;;; This file is part of GNU Guix. ;;; @@ -37,6 +37,7 @@ (define* (build-channels name inputs #:key source system commit + (channels '()) (authenticate? #t) #:allow-other-keys) (mlet* %store-monad ((instances @@ -44,7 +45,7 @@ (return (list source))) ((channel? source) (latest-channel-instances* - (list source) + (cons source channels) #:authenticate? authenticate?)) ((string? source) ;; If SOURCE is a store file name, as is the @@ -64,12 +65,14 @@ (define channel-build-system ;; Build system used to "convert" a channel instance to a package. (let ((lower (lambda* (name #:key system source commit (authenticate? #t) + (channels '()) #:allow-other-keys) (bag (name name) (system system) (build build-channels) (arguments `(#:source ,source + #:channels ,channels #:authenticate? ,authenticate? #:commit ,commit)))))) (build-system (name 'channel) |