summary refs log tree commit diff
path: root/gnu
diff options
context:
space:
mode:
authorLudovic Courtès <ludo@gnu.org>2020-02-19 22:54:11 +0100
committerLudovic Courtès <ludo@gnu.org>2020-03-05 23:40:23 +0100
commite458726ab47a3748d80eb69c3c2545b414a73836 (patch)
tree38d82018a7edc03b32390eeaf8f1dc613f2bf255 /gnu
parent8a4b11c6a911effddf4cac4b33f5c3c70392b797 (diff)
downloadguix-e458726ab47a3748d80eb69c3c2545b414a73836.tar.gz
installer: Honor /tmp/installer-system-init-options.
* gnu/installer/final.scm (install-system): Honor
"/tmp/installer-system-init-options".
Diffstat (limited to 'gnu')
-rw-r--r--gnu/installer/final.scm16
1 files changed, 13 insertions, 3 deletions
diff --git a/gnu/installer/final.scm b/gnu/installer/final.scm
index 7193ecb8a4..869be8814b 100644
--- a/gnu/installer/final.scm
+++ b/gnu/installer/final.scm
@@ -111,9 +111,19 @@ cow-store service."
 Start COW-STORE service on target directory and launch guix install command in
 a subshell.  LOCALE must be the locale name under which that command will run,
 or #f.  Return #t on success and #f on failure."
-  (let ((install-command (list "guix" "system" "init" "--fallback"
-                               (%installer-configuration-file)
-                               (%installer-target-dir))))
+  (let* ((options         (catch 'system-error
+                            (lambda ()
+                              ;; If this file exists, it can provide
+                              ;; additional command-line options.
+                              (call-with-input-file
+                                  "/tmp/installer-system-init-options"
+                                read))
+                            (const '())))
+         (install-command (append (list "guix" "system" "init"
+                                        "--fallback")
+                                  options
+                                  (list (%installer-configuration-file)
+                                        (%installer-target-dir)))))
     (mkdir-p (%installer-target-dir))
 
     ;; We want to initialize user passwords but we don't want to store them in