summaryrefslogtreecommitdiff
path: root/gnu
diff options
context:
space:
mode:
authorDenys Nykula <vegan@libre.net.ua>2023-07-01 23:48:11 +0300
committerFlorian Pelz <pelzflorian@pelzflorian.de>2023-07-06 15:38:58 +0200
commit961ffca1c75141cbb351d143b22b673638e9659d (patch)
treea02f93ac1641c9b7f0c0294627bb5be88f4bb23e /gnu
parent2426e51688d479042ea115a634c6be2d8b9f3b99 (diff)
installer: Restore LatGrkCyr-8x16 console font depending on language.
Partially-Fixes: <https://issues.guix.gnu.org/64006> * gnu/installer/services.scm (system-services->configuration): When the LANGUAGE environment variable matches a known native console font, wrap the base services with modify-services, configuring console-font-service-type to set the native console font on every tty instead of the default console font. Signed-off-by: Florian Pelz <pelzflorian@pelzflorian.de>
Diffstat (limited to 'gnu')
-rw-r--r--gnu/installer/services.scm19
1 files changed, 17 insertions, 2 deletions
diff --git a/gnu/installer/services.scm b/gnu/installer/services.scm
index d08bab47fd..4dfed78785 100644
--- a/gnu/installer/services.scm
+++ b/gnu/installer/services.scm
@@ -4,6 +4,7 @@
;;; Copyright © 2020 Jan (janneke) Nieuwenhuizen <janneke@gnu.org>
;;; Copyright © 2021 Tobias Geerinckx-Rice <me@tobias.gr>
;;; Copyright © 2021 Leo Famulari <leo@famulari.name>
+;;; Copyright © 2023 Denys Nykula <vegan@libre.net.ua>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -23,6 +24,7 @@
(define-module (gnu installer services)
#:use-module (guix records)
#:use-module (guix read-print)
+ #:use-module (ice-9 match)
#:use-module (srfi srfi-1)
#:export (system-service?
system-service-name
@@ -159,6 +161,19 @@
(base (if desktop?
'%desktop-services
'%base-services))
+ (native-console-font (match (getenv "LANGUAGE")
+ ((or "be" "bg" "el" "eo" "kk" "ky"
+ "mk" "mn" "ru" "sr" "tg" "uk")
+ "LatGrkCyr-8x16")
+ (_ #f)))
+ (services (if native-console-font
+ `(modify-services ,base
+ (console-font-service-type
+ config => (map (lambda (tty)
+ (cons (car tty)
+ ,native-console-font))
+ config)))
+ base))
(service-heading (list (vertical-space 1)
(comment (G_ "\
;; Below is the list of system services. To search for available
@@ -177,7 +192,7 @@
%base-packages))))
,@service-heading
- (services ,base))
+ (services ,services))
`(,@(if (null? packages)
'()
`(,@package-heading
@@ -199,4 +214,4 @@
,(comment (G_ "\
;; This is the default list of services we
;; are appending to.\n"))
- ,base))))))
+ ,services))))))