aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorpelzflorian (Florian Pelz) <pelzflorian@pelzflorian.de>2022-10-15 17:39:03 +0200
committerFlorian Pelz <pelzflorian@pelzflorian.de>2022-10-25 10:55:33 +0200
commit682639c107908426fe6bf0a1b8404b98b7820290 (patch)
treeca855b82478ae39fb015ffbcd3b4f7c8367e6299
parent3f0ea68177daafaeaece506067dd006d8669cb0b (diff)
downloadguix-682639c107908426fe6bf0a1b8404b98b7820290.tar
guix-682639c107908426fe6bf0a1b8404b98b7820290.tar.gz
installer: welcome: Warn when uvesafb gets used.
There will be false positives: Because the Guix installer uses the kernel argument modprobe.blacklist=radeon,amdgpu and some AMD graphics actually work okay according to h-node, these users will get a false alarm. * gnu/installer/newt/welcome.scm (run-welcome-page): Warn before showing the welcome page.
-rw-r--r--gnu/installer/newt/welcome.scm53
1 files changed, 32 insertions, 21 deletions
diff --git a/gnu/installer/newt/welcome.scm b/gnu/installer/newt/welcome.scm
index 7a7ddfb7bd..0bca44d1b2 100644
--- a/gnu/installer/newt/welcome.scm
+++ b/gnu/installer/newt/welcome.scm
@@ -1,6 +1,7 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2018 Mathieu Othacehe <m.othacehe@gmail.com>
;;; Copyright © 2020 Ludovic Courtès <ludo@gnu.org>
+;;; Copyright © 2022 Florian Pelz <pelzflorian@pelzflorian.de>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -17,6 +18,8 @@
;;; along with GNU Guix. If not, see <http://www.gnu.org/licenses/>.
(define-module (gnu installer newt welcome)
+ #:use-module ((gnu build linux-modules)
+ #:select (modules-loaded))
#:use-module (gnu installer steps)
#:use-module (gnu installer utils)
#:use-module (gnu installer newt page)
@@ -121,30 +124,38 @@ we want this page to occupy all the screen space available."
"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."
- (run-menu-page
- (G_ "GNU Guix install")
- (G_ "Welcome to GNU Guix system installer!
+ (begin
+ (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")))
+ (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")
+ .
+ ,(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)))