diff options
author | Mathieu Othacehe <othacehe@gnu.org> | 2021-12-29 13:45:26 +0100 |
---|---|---|
committer | Mathieu Othacehe <othacehe@gnu.org> | 2022-02-02 16:46:42 +0100 |
commit | 0d37a5df7e709cadca97cfbbf9c680dfe54b8302 (patch) | |
tree | f9b5877771fe70c92d7b7db327419dc2c6fd7c76 /gnu/installer/newt | |
parent | 8f585083277e64ea1e9a0848ef3c49f12327618c (diff) | |
download | guix-0d37a5df7e709cadca97cfbbf9c680dfe54b8302.tar.gz guix-0d37a5df7e709cadca97cfbbf9c680dfe54b8302.zip |
installer: Add crash dump upload support.
Suggested-by: Josselin Poiret <dev@jpoiret.xyz>
* gnu/installer/dump.scm: New file.
* gnu/installer/newt/dump.scm: New file.
* gnu/local.mk (INSTALLER_MODULES): Add them.
* gnu/installer/record.scm (<installer>)[dump-page]: New field.
* gnu/installer/steps.scm (%current-result): New variable.
(run-installer-steps): Update it.
* gnu/installer.scm (installer-program): Add tar and gip to the installer
path. Add guile-webutils and gnutls to the Guile extensions. Generate and send
the crash dump report.
* gnu/installer/newt.scm (exit-error): Add a report argument. Display the
report id.
(dump-page): New procedure.
(newt-installer): Update it.
Diffstat (limited to 'gnu/installer/newt')
-rw-r--r-- | gnu/installer/newt/dump.scm | 36 |
1 files changed, 36 insertions, 0 deletions
diff --git a/gnu/installer/newt/dump.scm b/gnu/installer/newt/dump.scm new file mode 100644 index 0000000000..64f0d58237 --- /dev/null +++ b/gnu/installer/newt/dump.scm @@ -0,0 +1,36 @@ +;;; GNU Guix --- Functional package management for GNU +;;; Copyright © 2021 Mathieu Othacehe <othacehe@gnu.org> +;;; +;;; This file is part of GNU Guix. +;;; +;;; GNU Guix is free software; you can redistribute it and/or modify it +;;; under the terms of the GNU General Public License as published by +;;; the Free Software Foundation; either version 3 of the License, or (at +;;; your option) any later version. +;;; +;;; GNU Guix is distributed in the hope that it will be useful, but +;;; WITHOUT ANY WARRANTY; without even the implied warranty of +;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +;;; GNU General Public License for more details. +;;; +;;; You should have received a copy of the GNU General Public License +;;; along with GNU Guix. If not, see <http://www.gnu.org/licenses/>. + +(define-module (gnu installer newt dump) + #:use-module (gnu installer dump) + #:use-module (gnu installer newt page) + #:use-module (guix i18n) + #:use-module (newt) + #:export (run-dump-page)) + +(define (run-dump-page dump) + "Run a dump page, proposing the user to upload the crash dump to Guix +servers." + (case (choice-window + (G_ "Crash dump upload") + (G_ "Yes") + (G_ "No") + (G_ "The installer failed. Do you accept to upload the crash dump \ +to Guix servers, so that we can investigate the issue?")) + ((1) (send-dump-report dump)) + ((2) #f))) |