mirror of
https://git.in.rschanz.org/ryan77627/guix.git
synced 2024-11-07 07:26:13 -05:00
installer: Warn about hardware support after the welcome page.
This is a followup to 682639c107
, which
added the uvesafb upfront, before welcome page had been displayed.
* gnu/installer/newt/welcome.scm (check-hardware-support): New
procedure.
(run-welcome-page): Use it.
This commit is contained in:
parent
de61a0aa4a
commit
4f7ffb97a4
1 changed files with 44 additions and 41 deletions
|
@ -1,6 +1,6 @@
|
|||
;;; GNU Guix --- Functional package management for GNU
|
||||
;;; Copyright © 2018 Mathieu Othacehe <m.othacehe@gmail.com>
|
||||
;;; Copyright © 2020 Ludovic Courtès <ludo@gnu.org>
|
||||
;;; Copyright © 2020, 2022 Ludovic Courtès <ludo@gnu.org>
|
||||
;;; Copyright © 2022 Florian Pelz <pelzflorian@pelzflorian.de>
|
||||
;;;
|
||||
;;; This file is part of GNU Guix.
|
||||
|
@ -121,55 +121,58 @@ (define (choice->item str)
|
|||
(lambda ()
|
||||
(destroy-form-and-pop form))))))
|
||||
|
||||
(define (run-welcome-page logo)
|
||||
"Run a welcome page with the given textual LOGO displayed at the center of
|
||||
the page. Ask the user to choose between manual installation, graphical
|
||||
installation and reboot."
|
||||
(begin
|
||||
(when (member "uvesafb" (modules-loaded))
|
||||
(run-error-page (G_ "\
|
||||
(define (check-hardware-support)
|
||||
"Warn about unsupported devices."
|
||||
(when (member "uvesafb" (modules-loaded))
|
||||
(run-error-page (G_ "\
|
||||
This may be a false alarm, but possibly your graphics hardware does not
|
||||
work well with only free software. Expect trouble. If after installation,
|
||||
the system does not boot, perhaps you will need to add nomodeset to the
|
||||
kernel arguments and need to configure the uvesafb kernel module.")
|
||||
(G_ "Pre-install warning")))
|
||||
(when (file-exists? %core-dump)
|
||||
(match
|
||||
(choice-window
|
||||
(G_ "Previous installation failed")
|
||||
(G_ "Continue")
|
||||
(G_ "Report the failure")
|
||||
(G_ "It seems that the previous installation exited unexpectedly \
|
||||
(G_ "Pre-install warning"))))
|
||||
|
||||
(define (run-welcome-page logo)
|
||||
"Run a welcome page with the given textual LOGO displayed at the center of
|
||||
the page. Ask the user to choose between manual installation, graphical
|
||||
installation and reboot."
|
||||
(when (file-exists? %core-dump)
|
||||
(match (choice-window
|
||||
(G_ "Previous installation failed")
|
||||
(G_ "Continue")
|
||||
(G_ "Report the failure")
|
||||
(G_ "It seems that the previous installation exited unexpectedly \
|
||||
and generated a core dump. Do you want to continue or to report the failure \
|
||||
first?"))
|
||||
(1 #t)
|
||||
(2 (raise
|
||||
(condition
|
||||
(&user-abort-error))))))
|
||||
(run-menu-page
|
||||
(G_ "GNU Guix install")
|
||||
(G_ "Welcome to GNU Guix system installer!
|
||||
(1 #t)
|
||||
(2 (raise
|
||||
(condition
|
||||
(&user-abort-error))))))
|
||||
|
||||
(run-menu-page
|
||||
(G_ "GNU Guix install")
|
||||
(G_ "Welcome to GNU Guix system installer!
|
||||
|
||||
You will be guided through a graphical installation program.
|
||||
|
||||
If you are familiar with GNU/Linux and you want tight control over \
|
||||
the installation process, you can instead choose manual installation. \
|
||||
Documentation is accessible at any time by pressing Ctrl-Alt-F2.")
|
||||
logo
|
||||
#:listbox-items
|
||||
`((,(G_ "Graphical install using a terminal based interface")
|
||||
.
|
||||
,(const #t))
|
||||
(,(G_ "Install using the shell based process")
|
||||
.
|
||||
,(lambda ()
|
||||
;; Switch to TTY3, where a root shell is available for shell based
|
||||
;; install. The other root TTY's would have been ok too.
|
||||
(system* "chvt" "3")
|
||||
(run-welcome-page logo)))
|
||||
(,(G_ "Reboot")
|
||||
.
|
||||
,(lambda ()
|
||||
(newt-finish)
|
||||
(reboot))))
|
||||
#:listbox-item->text car)))
|
||||
logo
|
||||
#:listbox-items
|
||||
`((,(G_ "Graphical install using a terminal based interface")
|
||||
.
|
||||
,check-hardware-support)
|
||||
(,(G_ "Install using the shell based process")
|
||||
.
|
||||
,(lambda ()
|
||||
(check-hardware-support)
|
||||
;; Switch to TTY3, where a root shell is available for shell based
|
||||
;; install. The other root TTY's would have been ok too.
|
||||
(system* "chvt" "3")
|
||||
(run-welcome-page logo)))
|
||||
(,(G_ "Reboot")
|
||||
.
|
||||
,(lambda ()
|
||||
(newt-finish)
|
||||
(reboot))))
|
||||
#:listbox-item->text car))
|
||||
|
|
Loading…
Reference in a new issue