This is on Oracle Linux 6.3, but I bet it applies to any Gnome based distros.
I have edited /usr/share/X11/xkb/symbols/ru, to add a layout section:
partial alphanumeric_keys
xkb_symbols "stdwin" {
include "ru(common)"
name[Group1]= "Russian (stdwin)";
key <AE03> { [ 3, numerosign ] };
key <AE04> { [ 4, semicolon ] };
key <AE05> { [ 5, percent ] };
key <AE06> { [ 6, colon ] };
key <AE06> { [ 6, colon ] };
key <AE07> { [ 7, question ] };
key <AE08> { [ 8, asterisk ] };
key <AB10> { [ period, comma ] };
};
I've updated symbols.dir using xkbcomp: xkbcomp -lhlpR '*' -o ../symbols.dir I've manually updated /usr/share/X11/xkb/rules/evdev.lst and /usr/share/X11/xkb/rules/evdev.xml.
If I try running gnome-keyboard-properties under strace, I can see it's reading the updated evdev.lst file. But it still won't ever show my new layout in the layout list.
I know that layout works, at least by xkb. If I run setxkbmap -variant stdwin, the proper layout becomes active, and I can normally use it.
What have I missed to make the gnome keyboard configuration applet (gnome-keyboard-properties) pick it up?