prefered way of configuring X11 keyboard layouts in F18

Lennart Poettering mzerqung at 0pointer.de
Fri Dec 21 15:57:09 UTC 2012


On Thu, 20.12.12 19:05, Nicolas Mailhot (nicolas.mailhot at laposte.net) wrote:

> >> The "conversion" (as systemd-localed calls it) works really poorly also
> >> for the Czech keymaps/layouts. 'cz' X11 layout is "converted" to
> >> 'cz-lat2' which works like 'us' until you hit the "Pause Break" key.
> >> This is really unfortunate especially when people set their LUKS
> >> password in Anaconda with the 'cz' X11 layout activated and then they
> >> are supposed to enter it again with the 'cz-lat2' keymap during boot.
> >
> > This mapping is based on /usr/share/systemd/kbd-model-map btw which we
> > stole from anaconda (or was it s-s-k?).
> 
> Unfortunately this mapping never worked well, is full of obsolete entries,
> has been a PITA to get updated for at least a decade (bugzilla change
> requests got ignored for years). Its only redeemable feature was that once
> you had installed your system you could fix anaconda choices in sysconfig
> files and forget about this particular i18n horror story (good i18n is
> much less important server-side which explains why anaconda layout support
> was 'good enough' for RHAT I guess)

Happy to take patches to improve this list.

> kbd layout database has fallen into disrepair since ubuntu/debian started
> generating their console layouts from xkb-config (they don't use kbd).

Hmm, are you saying that Fedora is just freeloading off Ubuntu?
Interesting, usually one hears only the opposite...

> Ubuntu/debian has the lion share desktop-side so all the i18n layouts get
> improved and updated in xkb-config, and few layout authors even bother
> with kbd layouts anymore (writing a layout is akin to writing in
> assembler, no one once to write the same routine twice it two different
> obscure layout dialects if it's possible to avoid it)

Well, the conversion stuff is really nothing we'd want to adopt in
Fedora as is. It's a perl hackery around the awful old tools we
use. Yes, it would be great if we could also use the same mappings for
the console as for X, but that would either require that somehow the
conversions can be done offline and shipped pre-converted, or that
somebody reimplements this in a sane toolset that isn't just some Perl
hackery.

> > We are happy to take patches for this database file, to improve the
> > mapping.
> 
> The database is bitrotten and even it it wasn't most modern layouts do not
> exist kbd-side at all. Most layouts with perfect mapping are old legacy
> ascii layouts. They are still in xkb-config for historical reasons but in
> many locales the preferred layout includes changes (unicodeā€¦) which have
> never been ported to kbd.

I doubt it's that rotten. It definitely works fine for the most popular
keymaps, such as the american and german. 

Note that this conversion has been exposed via GNOME's kbd config thingy
for a while, and we didn't really get much bugs about it, hence I assume
that it isn't too bad.

I mean, if you see bugs, please report them, tell us what to fix. Other
than that i can only tell you that the amount of bugs we got so far
about this is close to zero, hence I can only assume things are not as
bad as you say.

> If you really want to support console keyboard layouts in systemd, you
> need to start generating console layouts from xkb-config, not adopt the
> old anaconda mapping bandaid

I am pretty sure I don't want to work on this. But I'd welcome if
somebody did work on it, and we'd be happy to support this in systemd if
done right.

Lennart

-- 
Lennart Poettering - Red Hat, Inc.


More information about the devel mailing list