diff options
author | Ludovic Courtès <ludo@gnu.org> | 2019-03-20 12:19:14 +0100 |
---|---|---|
committer | Ludovic Courtès <ludo@gnu.org> | 2019-03-24 23:06:12 +0100 |
commit | ae7a316b9da0d1a50c5abdc531c68c8e98e561c9 (patch) | |
tree | c9d07ee413f3b9e2896931e4c49daf9acadf37fc /gnu/system.scm | |
parent | 48e595b7a8f8f83ba00386e4dccf1ef809474226 (diff) | |
download | guix-ae7a316b9da0d1a50c5abdc531c68c8e98e561c9.tar guix-ae7a316b9da0d1a50c5abdc531c68c8e98e561c9.tar.gz |
system: Initialize console keyboard layout in the initrd.
Partially fixes <https://bugs.gnu.org/25453>.
* gnu/system.scm (<operating-system>)[keyboard-layout]: New field.
(operating-system-initrd-file): Pass #:keyboard-layout to MAKE-INITRD.
* gnu/system/linux-initrd.scm (raw-initrd): Add #:keyboard-layout.
Pass #:keymap-file to 'boot-system'.
(base-initrd): Add #:keyboard-layout.
[helper-packages]: Add LOADKEYS-STATIC when KEYBOARD-LAYOUT is true.
Pass #:keyboard-layout to 'raw-initrd'.
* gnu/build/linux-boot.scm (boot-system): Add #:keymap-file and honor
it.
* doc/guix.texi (operating-system Reference): Document the
'keyboard-layout' field.
(Initial RAM Disk): Update 'raw-initrd' and 'base-initrd' documentation.
Diffstat (limited to 'gnu/system.scm')
-rw-r--r-- | gnu/system.scm | 7 |
1 files changed, 5 insertions, 2 deletions
diff --git a/gnu/system.scm b/gnu/system.scm index 6bccdaa8c2..035bbd82a1 100644 --- a/gnu/system.scm +++ b/gnu/system.scm @@ -1,5 +1,5 @@ ;;; GNU Guix --- Functional package management for GNU -;;; Copyright © 2013, 2014, 2015, 2016, 2017, 2018 Ludovic Courtès <ludo@gnu.org> +;;; Copyright © 2013, 2014, 2015, 2016, 2017, 2018, 2019 Ludovic Courtès <ludo@gnu.org> ;;; Copyright © 2015 Mark H Weaver <mhw@netris.org> ;;; Copyright © 2015, 2016 Alex Kost <alezost@gmail.com> ;;; Copyright © 2016 Chris Marusich <cmmarusich@gmail.com> @@ -157,6 +157,8 @@ (default '())) ; list of gexps/strings (bootloader operating-system-bootloader) ; <bootloader-configuration> + (keyboard-layout operating-system-keyboard-layout ;#f | <keyboard-layout> + (default #f)) (initrd operating-system-initrd ; (list fs) -> file-like (default base-initrd)) (initrd-modules operating-system-initrd-modules ; list of strings @@ -878,7 +880,8 @@ hardware-related operations as necessary when booting a Linux container." #:linux (operating-system-kernel os) #:linux-modules (operating-system-initrd-modules os) - #:mapped-devices mapped-devices)) + #:mapped-devices mapped-devices + #:keyboard-layout (operating-system-keyboard-layout os))) (define (locale-name->definition* name) "Variant of 'locale-name->definition' that raises an error upon failure." |