jmd pushed a commit to branch wip-installer
in repository guix.
commit 0a82d35a8558af6f73a1a760725e6513396481b3
Author: John Darrington <[email protected]>
Date: Wed Dec 28 12:42:09 2016 +0100
installer: Replace "%temporary-configuration-file-port" with "config-file".
* gnu/system/installer/guixsd-installer.scm,
gnu/system/installer/install.scm,
gnu/system/installer/misc.scm, gnu/system/installer/configure.scm: Replace
%temporary-configuration-file-port with config-file.
---
gnu/system/installer/configure.scm | 10 ++++++----
gnu/system/installer/guixsd-installer.scm | 7 +++----
gnu/system/installer/install.scm | 3 +--
gnu/system/installer/misc.scm | 6 +++---
4 files changed, 13 insertions(+), 13 deletions(-)
diff --git a/gnu/system/installer/configure.scm
b/gnu/system/installer/configure.scm
index 20b766b..a7cf3bf 100644
--- a/gnu/system/installer/configure.scm
+++ b/gnu/system/installer/configure.scm
@@ -79,10 +79,12 @@
((buttons-key-matches-symbol? nav ch 'save)
- ;; Write the configuration
- (truncate-file %temporary-configuration-file-port 0)
- (generate-guix-config %temporary-configuration-file-port)
- (force-output %temporary-configuration-file-port)
+
+ ;; Write the configuration and set the file name
+ (let ((cfg-port (mkstemp! (string-copy "/tmp/guix-config-XXXXXX"))))
+ (generate-guix-config cfg-port)
+ (set! config-file (port-filename cfg-port))
+ (close-port cfg-port))
;; Close the menu and return
(delwin (outer (page-wwin page)))
diff --git a/gnu/system/installer/guixsd-installer.scm
b/gnu/system/installer/guixsd-installer.scm
index 9ce144b..a69a715 100644
--- a/gnu/system/installer/guixsd-installer.scm
+++ b/gnu/system/installer/guixsd-installer.scm
@@ -114,10 +114,9 @@
(generate . , (make-task generate-menu-title
'(filesystems timezone hostname)
(lambda ()
- (let ((filename
- (port-filename
%temporary-configuration-file-port)))
- (and (file-exists? filename)
- (positive? (stat:size (stat
filename))))))
+ (and config-file
+ (file-exists? config-file)
+ (positive? (stat:size (stat
config-file)))))
(lambda (page)
(make-configure-page
diff --git a/gnu/system/installer/install.scm b/gnu/system/installer/install.scm
index 8521b30..44da10c 100644
--- a/gnu/system/installer/install.scm
+++ b/gnu/system/installer/install.scm
@@ -75,7 +75,6 @@
((buttons-key-matches-symbol? nav ch 'continue)
(let ((target "/target")
- (tmp-config (port-filename %temporary-configuration-file-port))
(window-port (make-window-port config-window))
(root-device (find-mount-device "/" mount-points)))
@@ -94,7 +93,7 @@
(zero? (pipe-cmd window-port "mount"
"mount" "-t" "ext4" root-device target))
(mkdir-p (string-append target "/etc"))
- (or (copy-file tmp-config
+ (or (copy-file config-file
(string-append target "/etc/config.scm"))
#t)
diff --git a/gnu/system/installer/misc.scm b/gnu/system/installer/misc.scm
index 291974e..e9e9083 100644
--- a/gnu/system/installer/misc.scm
+++ b/gnu/system/installer/misc.scm
@@ -22,7 +22,7 @@
#:export (livery-title)
#:export (time-zone)
#:export (host-name)
- #:export (%temporary-configuration-file-port)
+ #:export (config-file)
#:export (mount-points))
(define livery-title 1)
@@ -33,5 +33,5 @@
(define host-name "")
-(define %temporary-configuration-file-port
- (mkstemp! (string-copy "/tmp/guix-config-XXXXXX")))
+(define config-file #f)
+