guix-commits
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

01/03: installer: Do not include the host (guix config).


From: guix-commits
Subject: 01/03: installer: Do not include the host (guix config).
Date: Sun, 22 Mar 2020 11:50:02 -0400 (EDT)

civodul pushed a commit to branch master
in repository guix.

commit 99b23eabdbb660b46403649997c3ed41aeab95bb
Author: Ludovic Courtès <address@hidden>
AuthorDate: Sun Mar 22 15:51:40 2020 +0100

    installer: Do not include the host (guix config).
    
    Previously, "locales.drv" would depend on the host's (guix config).
    Thus, the derivation would depend on details of the user's installation.
    
    * gnu/installer.scm (not-config?): New procedure.
    (build-compiled-file): Pass it to 'source-module-closure' and use
    'make-config.scm'.
---
 gnu/installer.scm | 14 ++++++++++++--
 1 file changed, 12 insertions(+), 2 deletions(-)

diff --git a/gnu/installer.scm b/gnu/installer.scm
index 6c11fa6..50f5b1a 100644
--- a/gnu/installer.scm
+++ b/gnu/installer.scm
@@ -61,6 +61,14 @@
     (('guix 'build _ ...) #t)
     (_ #f)))
 
+(define not-config?
+  ;; Select (guix …) and (gnu …) modules, except (guix config).
+  (match-lambda
+    (('guix 'config) #f)
+    (('guix _ ...) #t)
+    (('gnu _ ...) #t)
+    (_ #f)))
+
 (define* (build-compiled-file name locale-builder)
   "Return a file-like object that evalutes the gexp LOCALE-BUILDER and store
 its result in the scheme file NAME. The derivation will also build a compiled
@@ -75,8 +83,10 @@ version of this file."
 
   (define builder
     (with-extensions (list guile-json-3)
-      (with-imported-modules (source-module-closure
-                              '((gnu installer locale)))
+      (with-imported-modules `(,@(source-module-closure
+                                  '((gnu installer locale))
+                                  #:select? not-config?)
+                               ((guix config) => ,(make-config.scm)))
         #~(begin
             (use-modules (gnu installer locale))
 



reply via email to

[Prev in Thread] Current Thread [Next in Thread]