Subject: [bug#53063] [PATCH wip-harden-installer 01/14] installer: Use define instead of let at top-level.

From: Josselin Poiret <[email-masked]>
Date: Thu, 6 Jan 2022 23:47:59 +0100

* gnu/installer.scm (installer-program): Improve readability by using
define at top-level.
---
 gnu/installer.scm | 88 +++++++++++++++++++++++------------------------
 1 file changed, 44 insertions(+), 44 deletions(-)

diff --git a/gnu/installer.scm b/gnu/installer.scm
index d57b1d673a..134fa2faaf 100644
--- a/gnu/installer.scm
+++ b/gnu/installer.scm
@@ -412,50 +412,50 @@ (define installer-builder
             ;; verbose.
             (terminal-width 200)
 
-            (let* ((current-installer newt-installer)
-                   (steps (#$steps current-installer)))
-              ((installer-init current-installer))
-
-              (catch #t
-                (lambda ()
-                  (define results
-                    (run-installer-steps
-                     #:rewind-strategy 'menu
-                     #:menu-proc (installer-menu-page current-installer)
-                     #:steps steps))
-
-                  (match (result-step results 'final)
-                    ('success
-                     ;; We did it!  Let's reboot!
-                     (sync)
-                     (stop-service 'root))
-                    (_
-                     ;; The installation failed, exit so that it is restarted
-                     ;; by login.
-                     #f)))
-                (const #f)
-                (lambda (key . args)
-                  (syslog "crashing due to uncaught exception: ~s ~s~%"
-                          key args)
-                  (let ((error-file "/tmp/last-installer-error")
-                        (dump-archive "/tmp/dump.tgz"))
-                    (call-with-output-file error-file
-                      (lambda (port)
-                        (display-backtrace (make-stack #t) port)
-                        (print-exception port
-                                         (stack-ref (make-stack #t) 1)
-                                         key args)))
-                    (make-dump dump-archive
-                               #:result %current-result
-                               #:backtrace error-file)
-                    (let ((report
-                           ((installer-dump-page current-installer)
-                            dump-archive)))
-                      ((installer-exit-error current-installer)
-                       error-file report key args)))
-                  (primitive-exit 1)))
-
-              ((installer-exit current-installer)))))))
+            (define current-installer newt-installer)
+            (define steps (#$steps current-installer))
+            ((installer-init current-installer))
+
+            (catch #t
+              (lambda ()
+                (define results
+                  (run-installer-steps
+                   #:rewind-strategy 'menu
+                   #:menu-proc (installer-menu-page current-installer)
+                   #:steps steps))
+
+                (match (result-step results 'final)
+                  ('success
+                   ;; We did it!  Let's reboot!
+                   (sync)
+                   (stop-service 'root))
+                  (_
+                   ;; The installation failed, exit so that it is restarted
+                   ;; by login.
+                   #f)))
+              (const #f)
+              (lambda (key . args)
+                (syslog "crashing due to uncaught exception: ~s ~s~%"
+                        key args)
+                (let ((error-file "/tmp/last-installer-error")
+                      (dump-archive "/tmp/dump.tgz"))
+                  (call-with-output-file error-file
+                    (lambda (port)
+                      (display-backtrace (make-stack #t) port)
+                      (print-exception port
+                                       (stack-ref (make-stack #t) 1)
+                                       key args)))
+                  (make-dump dump-archive
+                             #:result %current-result
+                             #:backtrace error-file)
+                  (let ((report
+                         ((installer-dump-page current-installer)
+                          dump-archive)))
+                    ((installer-exit-error current-installer)
+                     error-file report key args)))
+                (primitive-exit 1)))
+
+            ((installer-exit current-installer))))))
 
   (program-file
    "installer"
-- 
2.34.0