guix-commits
[Top][All Lists]
Advanced

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

13/21: installer: Use call-with-temporary-output-file.


From: John Darrington
Subject: 13/21: installer: Use call-with-temporary-output-file.
Date: Thu, 22 Dec 2016 19:58:40 +0000 (UTC)

jmd pushed a commit to branch wip-installer
in repository guix.

commit 4db5f1958e778f4472f5c87c6c8e257cf9c3c801
Author: John Darrington <address@hidden>
Date:   Wed Dec 21 16:28:09 2016 +0100

    installer: Use call-with-temporary-output-file.
    
    * gnu/system/installer/new.scm (base-page-key-handler): Use existing
    call-with-temporary-output-file procedure instead of rolling our own.
---
 gnu/system/installer/new.scm |   16 +++++++++-------
 1 file changed, 9 insertions(+), 7 deletions(-)

diff --git a/gnu/system/installer/new.scm b/gnu/system/installer/new.scm
index a9acbfe..9b18251 100644
--- a/gnu/system/installer/new.scm
+++ b/gnu/system/installer/new.scm
@@ -34,6 +34,7 @@
             (gnu system installer dialog)
 
              (guix build utils)
+             (guix utils)
              
             (ice-9 format)
              (ice-9 match)
@@ -149,13 +150,14 @@
 (define (base-page-key-handler page ch)
   (cond
    ((eqv? ch (key-f 1))
-    (endwin)
-    (let* ((p (mkstemp! (string-copy "/tmp/installer.XXXXXX")))
-           (file-name (port-filename p)))
-      (format p "echo '~a'\n" (gettext "Type \"exit\" to return to the GuixSD 
installer."))
-      (close p)
-      (system* "bash" "--rcfile" file-name)
-      (delete-file file-name)))
+
+    (call-with-temporary-output-file
+     (lambda (file-name port)
+       (endwin)
+       (format port "echo '~a'\n"
+               (gettext "Type \"exit\" to return to the GuixSD installer."))
+       (close port)
+       (system* "bash" "--rcfile" file-name))))
 
    ((eqv? ch (key-f 9))
     (setlocale LC_ALL "de_DE.UTF-8")



reply via email to

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