diff options
author | Mathieu Othacehe <m.othacehe@gmail.com> | 2020-02-10 14:47:56 +0100 |
---|---|---|
committer | Mathieu Othacehe <m.othacehe@gmail.com> | 2020-02-12 10:52:17 +0100 |
commit | d008352bfb7e48bb275bdf2ff763832aae231a64 (patch) | |
tree | e8ab9a30a14dec7f1a71f8ee0abf24be1cd810cc | |
parent | 1d02052067e04d7dd8fd1ec17557ca02a30b9bcf (diff) | |
download | guix-d008352bfb7e48bb275bdf2ff763832aae231a64.tar.gz |
installer: Fix installer restart dialog.
* gnu/installer/newt/final.scm (run-install-failed-page): Propose between installer resume or restart. Do actually resume the installation by raising an &installer-step-abort condition if "Resume" button is pressed. Otherwise, keep going as the installer will be restarted by login. * gnu/installer.scm (installer-program): Remove the associated TODO comment.
-rw-r--r-- | gnu/installer.scm | 7 | ||||
-rw-r--r-- | gnu/installer/newt/final.scm | 21 |
2 files changed, 18 insertions, 10 deletions
diff --git a/gnu/installer.scm b/gnu/installer.scm index 1676a91801..3f4ae4bf53 100644 --- a/gnu/installer.scm +++ b/gnu/installer.scm @@ -1,5 +1,5 @@ ;;; GNU Guix --- Functional package management for GNU -;;; Copyright © 2018 Mathieu Othacehe <m.othacehe@gmail.com> +;;; Copyright © 2018, 2020 Mathieu Othacehe <m.othacehe@gmail.com> ;;; Copyright © 2019 Ludovic Courtès <ludo@gnu.org> ;;; Copyright © 2019, 2020 Tobias Geerinckx-Rice <me@tobias.gr> ;;; @@ -389,8 +389,9 @@ selected keymap." ;; We did it! Let's reboot! (sync) (stop-service 'root)) - (_ ;installation failed - ;; TODO: Honor the result of 'run-install-failed-page'. + (_ + ;; The installation failed, exit so that it is restarted + ;; by login. #f))) (const #f) (lambda (key . args) diff --git a/gnu/installer/newt/final.scm b/gnu/installer/newt/final.scm index 061bcd3f78..405eee2540 100644 --- a/gnu/installer/newt/final.scm +++ b/gnu/installer/newt/final.scm @@ -1,5 +1,5 @@ ;;; GNU Guix --- Functional package management for GNU -;;; Copyright © 2018 Mathieu Othacehe <m.othacehe@gmail.com> +;;; Copyright © 2018, 2020 Mathieu Othacehe <m.othacehe@gmail.com> ;;; Copyright © 2019, 2020 Ludovic Courtès <ludo@gnu.org> ;;; ;;; This file is part of GNU Guix. @@ -27,6 +27,7 @@ #:use-module (guix i18n) #:use-module (srfi srfi-34) #:use-module (srfi srfi-35) + #:use-module (ice-9 match) #:use-module (newt) #:export (run-final-page)) @@ -73,12 +74,18 @@ press the button to reboot.")) 'success) (define (run-install-failed-page) - (choice-window - (G_ "Installation failed") - (G_ "Restart installer") - (G_ "Retry system install") - (G_ "The final system installation step failed. You can retry the \ -last step, or restart the installer."))) + (match (choice-window + (G_ "Installation failed") + (G_ "Resume") + (G_ "Restart the installer") + (G_ "The final system installation step failed. You can resume from \ +a specific step, or restart the installer.")) + (1 (raise + (condition + (&installer-step-abort)))) + (2 + ;; Keep going, the installer will be restarted later on. + #t))) (define* (run-install-shell locale #:key (users '())) |