services: kmsconf: Load GNU Freefont.

This provides glyphs for additional fonts such as Amharic that were
otherwise missing.

Fixes <https://issues.guix.gnu.org/60164>.
Reported by Wolf <wolf@wolfsden.cz>.

* gnu/services/base.scm (kmscon-service-type): In 'start' method,
pass #:environment-variables to set 'XDG_DATA_DIRS'.
This commit is contained in:
Ludovic Courtès 2022-12-18 13:08:04 +01:00
parent 495c50008b
commit d7d049fdcd
No known key found for this signature in database
GPG key ID: 090B11993D9AEBB5

View file

@ -72,6 +72,7 @@ (define-module (gnu services base)
#:select (dosfstools))
#:use-module ((gnu packages file-systems)
#:select (bcachefs-tools exfat-utils jfsutils zfs))
#:use-module (gnu packages fonts)
#:use-module (gnu packages terminals)
#:use-module ((gnu packages wm) #:select (sway))
#:use-module ((gnu build file-systems)
@ -2487,7 +2488,15 @@ (define kmscon-command
(documentation "kmscon virtual terminal")
(requirement '(user-processes udev dbus-system))
(provision (list (symbol-append 'term- (string->symbol virtual-terminal))))
(start #~(make-forkexec-constructor #$kmscon-command))
(start #~(make-forkexec-constructor
#$kmscon-command
;; The installer needs to be able to display glyphs from
;; various scripts, so give it access to freefont.
;; TODO: Make this configurable.
#:environment-variables
(list (string-append "XDG_DATA_DIRS="
#$font-gnu-freefont "/share"))))
(stop #~(make-kill-destructor)))))
(description "Start the @command{kmscon} virtual terminal emulator for the
Linux @dfn{kernel mode setting} (KMS).")))