From 3c0e16391ed9a3e3e4611b940fb393c5f2ecea63 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ludovic=20Court=C3=A8s?= Date: Sun, 16 Sep 2018 21:58:19 +0200 Subject: [PATCH] channels: Add Guile-Git as a dependency of external channels. Fixes a regression introduced in aed0a594058a59bc3bb1d2686391dc0e8a181b1f whereby external channels would fail to build due to the lack of a (git) module. Reported by Alex ter Weele on #guix. * guix/channels.scm (channel-instance-derivations)[guile-gcrypt]: Remove. [dependencies]: New variable. Use it in the 2nd argument to 'build-channel-instance'. --- guix/channels.scm | 16 +++++++++++----- 1 file changed, 11 insertions(+), 5 deletions(-) diff --git a/guix/channels.scm b/guix/channels.scm index cf833db8b9..2e7bffae9f 100644 --- a/guix/channels.scm +++ b/guix/channels.scm @@ -207,10 +207,16 @@ (define core-instance (guix-channel? (channel-instance-channel instance))) instances)) - ;; Guile-Gcrypt is a dependency of CORE-INSTANCE. - (define guile-gcrypt - (module-ref (resolve-interface '(gnu packages gnupg)) - 'guile-gcrypt)) + (define dependencies + ;; Dependencies of CORE-INSTANCE. + ;; FIXME: It would be best not to hard-wire this information here and + ;; instead query it to CORE-INSTANCE. + (list (module-ref (resolve-interface '(gnu packages gnupg)) + 'guile-gcrypt) + (module-ref (resolve-interface '(gnu packages guile)) + 'guile-git) + (module-ref (resolve-interface '(gnu packages guile)) + 'guile-bytestructures))) (mlet %store-monad ((core (build-channel-instance core-instance))) (mapm %store-monad @@ -218,7 +224,7 @@ (define guile-gcrypt (if (eq? instance core-instance) (return core) (build-channel-instance instance - (list core guile-gcrypt)))) + (cons core dependencies)))) instances))) (define (whole-package-for-legacy name modules)