summary refs log tree commit diff
diff options
context:
space:
mode:
authorLudovic Courtès <ludo@gnu.org>2017-11-29 22:29:26 +0100
committerLudovic Courtès <ludo@gnu.org>2017-11-29 23:40:39 +0100
commit6ee797f326274284ac60dad50688f877a93711d2 (patch)
tree2c77ad76b313705d1a29d8062a8bfe6cc2d48747
parent32008a75dc9f7584eb6c065e96fc6fcabafb312e (diff)
downloadguix-6ee797f326274284ac60dad50688f877a93711d2.tar.gz
gexp: Default to 'guile-2.2' for 'program-file'.
Previously things returned by 'program-file', such as %MODPROBE-WRAPPER
in (gnu services), would refer to 'guile-final'.  This would introduce
'guile-final' in the system closure, which is otherwise absent.  By
referring to 'guile-2.2' we remove that extra Guile.

* guix/gexp.scm (default-guile): Refer to GUILE-2.2 instead of
GUILE-FINAL.
-rw-r--r--guix/gexp.scm8
1 files changed, 5 insertions, 3 deletions
diff --git a/guix/gexp.scm b/guix/gexp.scm
index 27a8f35a58..1929947d95 100644
--- a/guix/gexp.scm
+++ b/guix/gexp.scm
@@ -1096,10 +1096,12 @@ they can refer to each other."
 ;;;
 
 (define (default-guile)
-  ;; Lazily resolve 'guile-final'.  This module must not refer to (gnu …)
+  ;; Lazily resolve 'guile-2.2' (not 'guile-final' because this is for
+  ;; programs returned by 'program-file' and we don't want to keep references
+  ;; to several Guile packages).  This module must not refer to (gnu …)
   ;; modules directly, to avoid circular dependencies, hence this hack.
-  (module-ref (resolve-interface '(gnu packages commencement))
-              'guile-final))
+  (module-ref (resolve-interface '(gnu packages guile))
+              'guile-2.2))
 
 (define (load-path-expression modules)
   "Return as a monadic value a gexp that sets '%load-path' and