GNU bug report logs -
#34929
[PATCH 00/12] Provide uniform keyboard layout configuration
Previous Next
Reported by: Ludovic Courtès <ludo <at> gnu.org>
Date: Wed, 20 Mar 2019 22:44:02 UTC
Severity: normal
Tags: patch
Done: Ludovic Courtès <ludo <at> gnu.org>
Bug is archived. No further changes may be made.
Full log
View this message in rfc822 format
[Message part 1 (text/plain, inline)]
Your message dated Sun, 24 Mar 2019 23:14:42 +0100
with message-id <87sgvbsywd.fsf <at> gnu.org>
and subject line Re: [bug#34929] [PATCH 00/12] Provide uniform keyboard layout configuration
has caused the debbugs.gnu.org bug report #34929,
regarding [PATCH 00/12] Provide uniform keyboard layout configuration
to be marked as done.
(If you believe you have received this mail in error, please contact
help-debbugs <at> gnu.org.)
--
34929: http://debbugs.gnu.org/cgi/bugreport.cgi?bug=34929
GNU Bug Tracking System
Contact help-debbugs <at> gnu.org with problems
[Message part 2 (message/rfc822, inline)]
Hello Guix!
This patch series attempts to address a longstanding issue in Guix:
keyboard layout configuration.
The end result is that you can configure the layout for GRUB,
the Linux console, and Xorg using a single <keyboard-layout> record,
which directly corresponds to an XKB layout specification.
The three things still have to be configured separately. Here’s an
example where GRUB, Linux, and Xorg use the same layout:
(operating-system
;; ...
(keyboard-layout (keyboard-layout "tr")) ;for the console
(bootloader (bootloader-configuration
(bootloader grub-efi-bootloader)
(target "/boot/efi")
(keyboard-layout keyboard-layout))) ;for GRUB
(services (modify-services %desktop-services
(slim-service-type config =>
(slim-configuration
(inherit config)
(xorg-configuration
(xorg-configuration ;for Xorg
(keyboard-layout keyboard-layout))))))))
Clearly the Xorg bit is suboptimal. I don’t see any obvious way
to simplify this part unfortunately because the <xorg-configuration>
record is aggregated by ‘slim-configuration’ & co. (there’s no Xorg
service that we could extend.) That’s something we can still improve
afterwards, though.
Potentially controversial issues:
1. The Xorg API is changed in an incompatible way:
‘xorg-start-command’ has a different prototype, the ‘startx’
field of ‘slim-configuration’ is gone, etc. If you were using
these, your config will have to be adjusted to use the new
‘xorg-configuration’ record. (But hey, we’re still pre-1.0!).
2. Since both fields and the record constructor are called
‘keyboard-layout’, you could easily have name clashes (it’s
more of an aesthetic consideration, not a showstopper.)
After that we should probably change the installer to generate
the right incantations.
These patches fix <https://issues.guix.info/issue/25453> and
<https://issues.guix.info/issue/26234>.
Feedback welcome!
And thanks to nee for the initial inspiration!
Ludo’.
Ludovic Courtès (12):
bootloader: Remove unused 'additional-configuration' field.
bootloader: Reindent record type definition.
Add (gnu system keyboard).
bootloader: Add a 'keyboard-layout' field.
services: xorg: Remove unused #:guile parameter.
services: xorg: Define and <xorg-configuration> record type.
services: sddm, slim, gdm: Take an <xorg-configuration> record.
services: xorg: Add a 'keyboard-layout' field in <xorg-configuration>.
vm: 'virtualized-operating-system' inherits from the user's bootloader
config.
gnu: Add loadkeys-static.
system: Initialize console keyboard layout in the initrd.
doc: Document keyboard layout.
doc/guix.texi | 305 ++++++++++++++++++++++++------------
gnu.scm | 3 +-
gnu/bootloader.scm | 43 ++---
gnu/bootloader/grub.scm | 35 +++++
gnu/build/linux-boot.scm | 15 +-
gnu/local.mk | 1 +
gnu/packages/linux.scm | 37 +++++
gnu/services/sddm.scm | 14 +-
gnu/services/xorg.scm | 182 ++++++++++++---------
gnu/system.scm | 7 +-
gnu/system/keyboard.scm | 98 ++++++++++++
gnu/system/linux-initrd.scm | 26 ++-
gnu/system/vm.scm | 1 +
13 files changed, 561 insertions(+), 206 deletions(-)
create mode 100644 gnu/system/keyboard.scm
--
2.21.0
[Message part 3 (message/rfc822, inline)]
Hi Julien,
Julien Lepiller <julien <at> lepiller.eu> skribis:
> Apart from the minor comments I already sent to patches 4, 6 and 8,
> LGTM! Thank you!
I’ve made the changes you suggested and pushed as commit
2bbb4ead771fcb29266607b338b21c6dd97e3f69.
Thanks for your feedback!
Ludo’.
This bug report was last modified 6 years and 110 days ago.
Previous Next
GNU bug tracking system
Copyright (C) 1999 Darren O. Benham,
1997,2003 nCipher Corporation Ltd,
1994-97 Ian Jackson.