RFE: clean up keyboard layout config

Muayyad AlSadi alsadi at gmail.com
Sat Jul 4 09:56:12 UTC 2009


Hello everybody,

I was tracing a problem that was no reproducible
getting "Error activating XKB configuration"

as I'm not the only one who got this error, just google for it and see

some times is could be a result of broken language files

https://bugzilla.redhat.com/show_bug.cgi?id=487583

but it's very difficult to trace the problem

https://bugzilla.redhat.com/show_bug.cgi?id=508628

what do we want ?
1. we want to a way to select a system wide layout
2. we want to allow users to override that (per-user layout)

the problem ?

issues solving #1

rhpl - used by fedora-setup-keyboard at compile time [is the any other usage ?]
  this mean that any update to rhpl needs a rebuild for
fedora-setup-keyboard so does koji knows this ?

  after #487583, rhpl was updated rhpl to put ara and make the variant
 qwerty passed to ara not us
  this could result that one can't add new users in first login
because the default layout is Arabic

fedora-setup-keyboard - beside building issue there is another issue
  it reads /etc/sysconfig/keyboard  which could contain something like
KEYTABLE="ar-qwerty" [from rhpl]
  or detailed parameters like LAYOUT, OPTIONS and VARIANT
  the question is what happened if both are specified ?

  the second question which is related to #487583
  while setxkbmap manual says it does not support per-layout variants
  does this apply to fedora-setup-keyboard (and is this inherited from
evdev hal interface)
  if not then it rhpl should be updated to be us,ara with variants=",querty"
  and if possible change it to be
"layout1\tvariant1,layout2\tvariant2" or something like that

xkeyboard-config - the arabic part in it, is it difficult to make it
defaults to qwerty so that KEYTABLE="ar-qwerty" needs no variants at
all, and ar-azerty will be just coupled with fr,ara instead.

how to test this ?
gnome and gdm should not be used to test this
I suggest xfce to test this stage [I used autologin in gdm to stop it
from playing withouts]
because both gdm and gnome interferes this process

---------------------
issues solving #2

gdm - to what options ?
unable to login in many cases, for example after #487583 they updated
rhpl to put ara first but gdm did not allow me to switch using shifts
or shift caps or alt+shift and using a special debug stubs I injected
into libgnomekbd, it seems that gdm does not set options like
grp:alt_shift_toggle, it just set layouts,

gnome - in general we have the following components

gnome-settings-daemon - which activates the layout based on gconf
/desktop/gnome/peripherals/keyboard/kbd
  this is the one that shows that dialog in the screenshot

control-center - contains gnome-keyboard-properties

libgnomekbd - the library that talks to libxklavier and converts to gconf

libxklavier - the back end library used by gnome related apps

it seems that there is a bug libgnomekbd, because it though that the
comma in ara,us should be escaped
as it wrote "ara\,us" to gconf when I set multiple variants in
/etc/sysconfig/keyboard or rhpl

so even though libxklavier and thus libgnomekbd supports multiple
variants it failed to import it from the current X

--------------
misc issues

xorg-x11-utils - contains xprop which is used like this xprop -root | grep XKB
xorg-x11-xkb-utils - contains setxkbmap - the man page says that it takes only
one single variant not a list of variants

does setxkbmap supports multiple variants but it's not documented or
it's not supported
if it's the first then its man page should be updated with examples

it it does not support it
how difficult is it to make it support it




More information about the fedora-devel-list mailing list