~ruther/guix-local

6ee797f326274284ac60dad50688f877a93711d2 — Ludovic Courtès 8 years ago 32008a7
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.
1 files changed, 5 insertions(+), 3 deletions(-)

M guix/gexp.scm
M guix/gexp.scm => guix/gexp.scm +5 -3
@@ 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