I was using the Bulgarian New Phonetic layout for cyrillic, but I am accustomed to touch-typing on a QWERTZ layout, so all the symbols are in the wrong place. So I decided to make my own layout in KDE.

I found the /usr/share/X11/xkb/symbols files, and added a new mapping to the one called "bg". I just copied and pasted the block called "new phonetic", changed the name to "phonetic qwertz" and changed the symbols as I need them. I hoped that after a restart, I will find a new type of layout in the list of available keyboard layouts, and will be able to change to it. Sadly, this wasn't the case. It seems that I have to tell my system that a new layout exists, but I don't know how. Existing questions don't explain what to do with the file after it has been modified.

How can I deploy my new layout and use it?

2 Answers 2


Inspecting the source code reveals that kcm_keyboard reads /usr/share/X11/xkb/rules/base.xml for the metadata. Register your new variant there.

  • 1
    It should be possible to do this without being root :/
    – ysdx
    May 29, 2014 at 19:15

I did this a while ago and remember I had to update

  • base.lst,
  • base.xml,
  • evdev.lst, and
  • evdev.xml,

which are all in the rules directory, on Slackware it's /etc/X11/xkb/rules.

It's possible that it would work with fewer updated files (I don't remember how much I tested), but updating these four definitely worked.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.