diff --git a/gnu/system/install.scm b/gnu/system/install.scm index f6f1923121..a512ace29e 100644 --- a/gnu/system/install.scm +++ b/gnu/system/install.scm @@ -289,11 +289,16 @@ (define (uvesafb-shepherd-service _) (provision '(maybe-uvesafb)) (requirement '(file-systems)) (start #~(lambda () - (or (file-exists? "/dev/fb0") - (invoke #+(file-append kmod "/bin/modprobe") - "uvesafb" - (string-append "v86d=" #$v86d "/sbin/v86d") - "mode_option=1024x768")))) + (unless (file-exists? "/dev/fb0") + (setenv "LINUX_MODULE_DIRECTORY" + "/run/booted-system/kernel/lib/modules") + ;; TODO: Use 'load-linux-modules-from-directory' instead. + (invoke #+(file-append kmod "/bin/modprobe") + "uvesafb" + (string-append "v86d=" #$v86d "/sbin/v86d") + "mode_option=1024x768") + (unsetenv "LINUX_MODULE_DIRECTORY") + #t))) (respawn? #f) (one-shot? #t))))