summary refs log tree commit diff
diff options
context:
space:
mode:
authorLudovic Courtès <ludo@gnu.org>2018-04-11 00:55:13 +0200
committerLudovic Courtès <ludo@gnu.org>2018-04-11 01:03:47 +0200
commiteb72cdf087fe51d85e0c1514ec8e669047b5d6e1 (patch)
tree6507889e54bc7e4c7eef58b7316c9166bbc69f8e
parent4fbd1a2b7f0db819e14d7cc862445d9ab3d0d80f (diff)
downloadguix-eb72cdf087fe51d85e0c1514ec8e669047b5d6e1.tar.gz
self: Produce a spliced (guix config) to placate Guile 2.0.
Fixes 'guix pull' with Guile 2.0.
See <https://debbugs.gnu.org/cgi/bugreport.cgi?bug=27284#153>.

* guix/self.scm (make-config.scm): Remove 'begin' in 'scheme-file'
argument and pass #:splice? #t.
-rw-r--r--guix/self.scm9
1 files changed, 7 insertions, 2 deletions
diff --git a/guix/self.scm b/guix/self.scm
index 0730cd850d..6220efb397 100644
--- a/guix/self.scm
+++ b/guix/self.scm
@@ -384,7 +384,7 @@ list of file-name/file-like objects suitable as inputs to 'imported-files'."
   (define defmod 'define-module)
 
   (scheme-file "config.scm"
-               #~(begin
+               #~(;; The following expressions get spliced.
                    (#$defmod (guix config)
                      #:export (%guix-package-name
                                %guix-version
@@ -435,7 +435,12 @@ list of file-name/file-like objects suitable as inputs to 'imported-files'."
                             (file-append zlib "/lib/libz")))
 
                    (define %nix-instantiate       ;for (guix import snix)
-                     "nix-instantiate"))))
+                     "nix-instantiate"))
+
+               ;; Guile 2.0 *requires* the 'define-module' to be at the
+               ;; top-level or it 'toplevel-ref' in the resulting .go file are
+               ;; made relative to a nonexistent anonymous module.
+               #:splice? #t))