Gentoo Forums
Gentoo Forums
Gentoo Forums
Quick Search: in
Xorg-server does not load "de" keymap[SOLVED]
View unanswered posts
View posts from last 24 hours

 
Reply to topic    Gentoo Forums Forum Index Desktop Environments
View previous topic :: View next topic  
Author Message
transsib
l33t
l33t


Joined: 26 Jul 2003
Posts: 838

PostPosted: Thu Jun 28, 2018 5:18 pm    Post subject: Xorg-server does not load "de" keymap[SOLVED] Reply with quote

It is two years that I haven't had this annoying issue. Back then I had to add a line to .xinitrc to get X to load my keymap.
The devil is back forcing me to
Code:
setxkbmap de -model pc105
on the console.
Xorg.log tries to load it
Code:
[    48.645] (II) XINPUT: Adding extended input device "Razer Razer Ornata Chroma" (type: KEYBOARD, id 11)
[    48.645] (**) Option "xkb_rules" "evdev"
[    48.645] (**) Option "xkb_model" "razer ornata chroma"
[    48.645] (**) Option "xkb_layout" "de_DE"
[    48.645] (**) Option "xkb_variant" "qwertz"
[    48.645] (**) Option "xkb_options" "nodeadkeys"
[    48.646] (II) config/udev: Adding input device Razer Razer Ornata Chroma (/dev/input/event6)
[    48.646] (**) Razer Razer Ornata Chroma: Applying InputClass "evdev keyboard catchall"
[    48.646] (**) Razer Razer Ornata Chroma: Applying InputClass "libinput keyboard catchall"
[    48.646] (**) Razer Razer Ornata Chroma: Applying InputClass "evdev keyboard catchall"
[    48.646] (**) Razer Razer Ornata Chroma: Applying InputClass "system-keyboard"
[    48.646] (**) Razer Razer Ornata Chroma: Applying InputClass "libinput keyboard catchall"
[    48.646] (**) Razer Razer Ornata Chroma: Applying InputClass "evdev keyboard catchall"
[    48.646] (II) Using input driver 'evdev' for 'Razer Razer Ornata Chroma'

but ends up with
Code:
[    69.253] (EE) Error loading keymap /tmp/server-0.xkm


Editing xorg.conf and other files in /etc/X11/xorg.conf.de/ had no effect. I could as well delete any entry
there or in any other file: X does not load the proper keymap.

Does anyone on this forum know this behavior and/or would be able to point me into the right direction, please?


Last edited by transsib on Sun Jul 01, 2018 5:37 am; edited 1 time in total
Back to top
View user's profile Send private message
NeddySeagoon
Administrator
Administrator


Joined: 05 Jul 2003
Posts: 42559
Location: 56N 3W

PostPosted: Thu Jun 28, 2018 6:01 pm    Post subject: Reply with quote

transsib,

Reading
Code:
/usr/share/X11/xkb/rules/base.lst
the layout de_DE does not exist. Its just de.
Is de_DE a special layout you installed and portage has removed as part of an update.
_________________
Regards,

NeddySeagoon

Computer users fall into two groups:-
those that do backups
those that have never had a hard drive fail.
Back to top
View user's profile Send private message
transsib
l33t
l33t


Joined: 26 Jul 2003
Posts: 838

PostPosted: Thu Jun 28, 2018 6:06 pm    Post subject: Reply with quote

Hello Neddy,
I always had "de" only when this devil hit. I tried de_DE now on a whiff :)
I actually did hope it could help :lol:

I just checked: keymap is correct as long as X isn't up.
Back to top
View user's profile Send private message
geki
Advocate
Advocate


Joined: 13 May 2004
Posts: 2324
Location: Germania

PostPosted: Thu Jun 28, 2018 8:42 pm    Post subject: Reply with quote

I have configuration file /etc/X11/Xkbmap for the layout, $HOME/.Xkbmap is also possible; see:
https://github.com/geki-yaba/gekis-salt-seed/blob/master/xorg-mate-intel/etc/X11/Xkbmap

Then, lightdm loads my key layout as follows:
Code:
$ grep -n -A 5 Xkbmap /etc/lightdm/Xsession
24:for file in "/etc/X11/Xkbmap" "$HOME/.Xkbmap"; do
25-    if [ -f "$file" ]; then
26-        echo "Loading keymap: $file"
27-        setxkbmap `cat "$file"`
28-        XKB_IN_USE=yes
29-    fi
You may check how your dm loads the key layout. I wonder if startx tries to load latter configuration file? :roll:
_________________
boost|select libs to build|slotable|python-buildid

hear hear
Back to top
View user's profile Send private message
khayyam
Watchman
Watchman


Joined: 07 Jun 2012
Posts: 6228
Location: Room 101

PostPosted: Thu Jun 28, 2018 10:56 pm    Post subject: Reply with quote

geki wrote:
Code:
for file in "/etc/X11/Xkbmap" "$HOME/.Xkbmap"; do
    if [ -f "$file" ]; then
        echo "Loading keymap: $file"
        setxkbmap `cat "$file"`
        XKB_IN_USE=yes
    fi

geki ... shells do provide a method of reading in lines from a file:

Code:
for file in /etc/X11/Xkbmap $HOME/.Xkbmap ; do
    if [ -f "$file" ] ; then
        echo "Loading keymap: $file"
        while read -r line ; do
            setxkbmap "$line"
        done < "$file"
        XKB_IN_USE=yes
    fi
done

best ... khay
Back to top
View user's profile Send private message
transsib
l33t
l33t


Joined: 26 Jul 2003
Posts: 838

PostPosted: Fri Jun 29, 2018 5:15 am    Post subject: Reply with quote

There's a folder Sessions in /etc/X11/; I created a shell script there
named Xsession that tells X to load $HOME/.Xkbmap
and see if that helps.
Thank you.

EDIT
Woe is me ... it does not work. Back to square one.
Back to top
View user's profile Send private message
geki
Advocate
Advocate


Joined: 13 May 2004
Posts: 2324
Location: Germania

PostPosted: Fri Jun 29, 2018 7:27 am    Post subject: Reply with quote

khayyam As said, that's lightdm, feel free to report to them or is it a gentoo script? :o At least not mine.
_________________
boost|select libs to build|slotable|python-buildid

hear hear
Back to top
View user's profile Send private message
khayyam
Watchman
Watchman


Joined: 07 Jun 2012
Posts: 6228
Location: Room 101

PostPosted: Fri Jun 29, 2018 10:13 am    Post subject: Reply with quote

geki wrote:
khayyam As said, that's lightdm, feel free to report to them or is it a gentoo script? :o At least not mine.

geki ... okidoki, missed that. Looking at lightdm/files/ I can see it's installed by the package, so its a gentoo provided script.

@transsib ... sorry, but why can you not use ~/.xinitrc? ... and note as NeddySeagoon pointed out, the reason for the above error is the layout you're providing doesn't exist, something like the following should work (untested):

/etc/X11/xorg.conf.d/10-keyboard.conf:
Section "InputDevice"
   Identifier  "keyboard0"
   Driver      "kbd"
   Option      "AutoServerLayout" "on"
   # Deutsche keyboard map.
   Option      "XkbRules" "xorg"
   Option      "XkbModel" "pc105"
   Option      "XkbLayout" "de"
EndSection

HTH & best ... khay
Back to top
View user's profile Send private message
transsib
l33t
l33t


Joined: 26 Jul 2003
Posts: 838

PostPosted: Fri Jun 29, 2018 11:43 am    Post subject: Reply with quote

khayyamm, I always had "de" in xorg.conf, never the wrong de_DE. The latter was just a
desperate idea. I immediately removed it when I saw that it's wrong and useless.
And "de" is defined in xorg.conf, 30keyboard.conf in xorg.conf.d, and in
conf.d keymap. Yet for 4 weeks now I always have to load it on the console after X has started
here plasma kde as DE with "de" keymap defined in every file including .xinitrc.
.xinitrc always worked for me until then. I do not know which package, what update broke it
but here it is: X plainly ignores it and loads "us" keymap by default.
Back to top
View user's profile Send private message
khayyam
Watchman
Watchman


Joined: 07 Jun 2012
Posts: 6228
Location: Room 101

PostPosted: Fri Jun 29, 2018 12:15 pm    Post subject: Reply with quote

transsib ...

We haven't seen '30keyboard.conf', but if you look carefully at the Xorg.0.log output you posted it's using libinput (and evdev?!) as 'driver', that is why I set the "kbd" driver in the above (which, BTW, requires x11-drivers/xf86-input-keyboard ... as I forgot to mention) ... because I suspect that libinput is the culprit. So, please try with the above keyboard.conf ... using a different driver will possibly revert it to the previous behavior (that, or removing 'libinput' from INPUT_DEVICES).

best ... khay
Back to top
View user's profile Send private message
transsib
l33t
l33t


Joined: 26 Jul 2003
Posts: 838

PostPosted: Fri Jun 29, 2018 1:21 pm    Post subject: Reply with quote

Drivers evdev and libinput conflict? Gotcha.
Set -libinput in the make.conf to untangle kwin and qtgui
from libinput
Code:
equery depends libinput
 * These packages depend on libinput:
dev-qt/qtgui-5.9.4-r3 (libinput ? dev-libs/libinput)
kde-plasma/kwin-5.12.5 (>=dev-libs/libinput-1.5

but still got
Code:
emerge --update --deep --changed-use --ask @world

These are the packages that would be merged, in order:

Calculating dependencies... done!
[ebuild  N     ] dev-libs/libinput-1.10.7  USE="-doc {-test}" INPUT_DEVICES="-wacom"
[ebuild   R    ] dev-qt/qtgui-5.9.4-r3  USE="-libinput*"
[ebuild   R    ] dev-qt/qtwayland-5.9.4-r1  USE="-libinput*"
[ebuild  N     ] x11-drivers/xf86-input-libinput-0.27.1


I probably do not need qtwayland either, right? Gotta do some cleaning up but your
suggestion sounds promising.
On the other hand kwayland needs it. But do I need kwayland?
File 30keyboard.conf has evdev as driver but I remember I had libinput in INPUT_DEVICES
until recently.
Back to top
View user's profile Send private message
khayyam
Watchman
Watchman


Joined: 07 Jun 2012
Posts: 6228
Location: Room 101

PostPosted: Fri Jun 29, 2018 1:42 pm    Post subject: Reply with quote

transsib ...

kde-plasma/kwin depends on dev-libs/libinput ... but by the looks of it you don't have that dependency installed. That probably explains why the package (and x11-drivers/xf86-input-libinput) is pulled in ... even though you're switching the useflag to '-libinput'. However, none of that should matter, if you do as I suggest and set 'Driver "kbd"' in ?0keyboard.conf (make sure that x11-drivers/xf86-input-keyboard is installed first) that should be used.

As for kde/plasma questions, I've no idea what depends on what, what useflags should be set, etc, etc ... I avoid DE's like the proverbial plague.

best ... khay
Back to top
View user's profile Send private message
transsib
l33t
l33t


Joined: 26 Jul 2003
Posts: 838

PostPosted: Fri Jun 29, 2018 3:47 pm    Post subject: Reply with quote

I am sorry to say that it doesn't work like that. If I put "kbd" as driver into
xorg.conf and 30keyboard.conf I can produce a multitude of fancy characters
but nothing makes sense. Also the console is not usable at all.

Had to put "evdev" back. And of course I still need to switch to the proper
keymap after X started, as before.
Still searching for a solution.
I thank you very much for your input and help. But obviously there's more
stuff to clear before this is fixed.
Have a nice weekend.
Back to top
View user's profile Send private message
Fitzcarraldo
Veteran
Veteran


Joined: 30 Aug 2008
Posts: 1629
Location: United Kingdom

PostPosted: Fri Jun 29, 2018 5:28 pm    Post subject: Reply with quote

transsib,

What do your /etc/X11/xorg.conf and /etc/X11/xorg.conf.d/* files actually contain? Could you please post them?

What you posted earlier (quoted below) apparently shows some errors in the above-mentioned files, as I explain further on.

transsib wrote:

Code:
[    48.645] (II) XINPUT: Adding extended input device "Razer Razer Ornata Chroma" (type: KEYBOARD, id 11)
[    48.645] (**) Option "xkb_rules" "evdev"
[    48.645] (**) Option "xkb_model" "razer ornata chroma"
[    48.645] (**) Option "xkb_layout" "de_DE"
[    48.645] (**) Option "xkb_variant" "qwertz"
[    48.645] (**) Option "xkb_options" "nodeadkeys"
[    48.646] (II) config/udev: Adding input device Razer Razer Ornata Chroma (/dev/input/event6)
[    48.646] (**) Razer Razer Ornata Chroma: Applying InputClass "evdev keyboard catchall"
[    48.646] (**) Razer Razer Ornata Chroma: Applying InputClass "libinput keyboard catchall"
[    48.646] (**) Razer Razer Ornata Chroma: Applying InputClass "evdev keyboard catchall"
[    48.646] (**) Razer Razer Ornata Chroma: Applying InputClass "system-keyboard"
[    48.646] (**) Razer Razer Ornata Chroma: Applying InputClass "libinput keyboard catchall"
[    48.646] (**) Razer Razer Ornata Chroma: Applying InputClass "evdev keyboard catchall"
[    48.646] (II) Using input driver 'evdev' for 'Razer Razer Ornata Chroma'



The structure of /usr/share/X11/xkb/rules/base.lst is as follows:

Code:
$ grep "^\!" /usr/share/X11/xkb/rules/base.lst
! model
! layout
! variant
! option

If I search for the allowable layouts, variants and options in /usr/share/X11/xkb/rules/base.lst, this is what I find:

Code:
$ awk '/\! model/,/\! layout/' /usr/share/X11/xkb/rules/base.lst | sed -e '1d;$d' | grep -i razer
$ awk '/\! layout/,/\! variant/' /usr/share/X11/xkb/rules/base.lst | sed -e '1d;$d' | grep de
  de              German
$ awk '/\! variant/,/\! option/' /usr/share/X11/xkb/rules/base.lst | sed -e '1d;$d' | grep qwertz
  dsb_qwertz      de: Lower Sorbian (QWERTZ)
  101_qwertz_comma_dead hu: Hungarian (101/QWERTZ/comma/dead keys)
  101_qwertz_comma_nodead hu: Hungarian (101/QWERTZ/comma/no dead keys)
  101_qwertz_dot_dead hu: Hungarian (101/QWERTZ/dot/dead keys)
  101_qwertz_dot_nodead hu: Hungarian (101/QWERTZ/dot/no dead keys)
  102_qwertz_comma_dead hu: Hungarian (102/QWERTZ/comma/dead keys)
  102_qwertz_comma_nodead hu: Hungarian (102/QWERTZ/comma/no dead keys)
  102_qwertz_dot_dead hu: Hungarian (102/QWERTZ/dot/dead keys)
  102_qwertz_dot_nodead hu: Hungarian (102/QWERTZ/dot/no dead keys)
  qwertz          pl: Polish (QWERTZ)
$ awk '/\! option/,0' /usr/share/X11/xkb/rules/base.lst | sed -e '1d;$d' | grep nodeadkeys
$ awk '/\! variant/,/\! option/' /usr/share/X11/xkb/rules/base.lst | sed -e '1d;$d' | grep nodeadkeys | grep German
  nodeadkeys      at: German (Austria, no dead keys)
  nodeadkeys      de: German (no dead keys)
  ro_nodeadkeys   de: Romanian (Germany, no dead keys)
  mac_nodeadkeys  de: German (Macintosh, no dead keys)
  de_nodeadkeys   ch: German (Switzerland, no dead keys)

To summarise the above searches in /usr/share/X11/xkb/rules/base.lst:

1. 'qwertz' is not an X11 Variant for layout 'de'. However 'dsb_qwertz' is an X11 Variant for layout 'de'.
2. 'nodeadkeys' is not an X11 Option for layout 'de'. However, 'nodeadkeys' is an X11 Variant for layout 'de'.

Therefore have you tried modifying your xorg.conf.d/ keyboard file according to the above? As the 'de' layout is QWERTZ by default, you would not need to specify 'qwertz' explicitly in any case. If you want 'nodeadkeys', it appears you would need to specify that as an X11 Variant.
_________________
Clevo W230SS: amd64 OpenRC elogind nvidia-drivers & xf86-video-intel.
Compal NBLB2: ~amd64 OpenRC elogind xf86-video-ati. Dual boot Win 7 Pro 64-bit.
KDE on both.

Fitzcarraldo's blog
Back to top
View user's profile Send private message
transsib
l33t
l33t


Joined: 26 Jul 2003
Posts: 838

PostPosted: Sat Jun 30, 2018 5:31 am    Post subject: Reply with quote

Hi Fitzcarraldo

There're four files and one symlink in xorg.conf.d/;
30keyboard.conf:
https://bpaste.net/show/42f8a0c16244
xorg.conf:
https://bpaste.net/show/42ae1b4ba1e7
10evdev.conf:
https://bpaste.net/show/c3e455e944be
There's 20opengl.conf with the nvidia module that I do not
need to show.
Symlink belongs to libinput: 40-libinput.conf -> /usr/share/X11/xorg.conf.d/40-libinput.conf; the contents
shouldn't hurt, imho.
Here is the full Xorg.0.log:
https://bpaste.net/show/c7d65a85f3e3

I did change the entries you pointed out but not until this morning; didn't get
around to it yet. So I don't know what difference that might have made.

Have fun today 8) hopefully with as brilliant a sky as here.
Back to top
View user's profile Send private message
Fitzcarraldo
Veteran
Veteran


Joined: 30 Aug 2008
Posts: 1629
Location: United Kingdom

PostPosted: Sat Jun 30, 2018 9:06 pm    Post subject: Reply with quote

I don't have a Razer Ornata Chroma keyboard myself. Am I correct in thinking you did not install app-misc/openrazer from the vifino-overlay, and the razerkbd driver module is therefore not loaded?

The Xorg.0.log file you posted contains the following for the keyboard:

Code:
config/udev: Adding input device Razer Razer Ornata Chroma (/dev/input/event5)


Should the XkbModel therefore be "Razer Razer Ornata Chroma" rather than "razer ornata chroma"?

Anyway, I would try the following to see what happens:

1. Delete the following section from your /etc/X11/xorg.conf file (because the keyboard is specified in your file /etc/X11/xorg.conf.d/30keyboard.conf):

Code:
Section "InputClass"
  Identifier    "evdev keyboard catchall"
  Driver        "evdev"
  Option        "XkbModel" "razer ornata chroma"
  Option        "XkbRules" "xorg"
  Option        "XkbLayout" "de"
  Option        "XkbVariant" "nodeadkeys"
  MatchIsKeyboard               "on"
EndSection


2. Also delete your /etc/X11/xorg.conf.d/10evdev.conf file (because the keyboard is specified in your file /etc/X11/xorg.conf.d/30keyboard.conf) that contains:

Code:
Section "InputClass"
  Identifier "evdev keyboard catchall"
  Option "XkbModel" "razer ornata chroma"
  Option "XkbRules" "xorg"
  Option "XkbLayout" "de"
  Option "XkbVariant" "nodeadkeys"
  MatchIsKeyboard "on"
EndSection


3. Change /etc/X11/xorg.conf.d/30keyboard.conf to contain the following:

Code:
Section "InputClass"
    Identifier "keyboard"
    MatchIsKeyboard "yes"
    Option "XkbLayout" "de"
    Option "XkbVariant" "nodeadkeys"
EndSection

_________________
Clevo W230SS: amd64 OpenRC elogind nvidia-drivers & xf86-video-intel.
Compal NBLB2: ~amd64 OpenRC elogind xf86-video-ati. Dual boot Win 7 Pro 64-bit.
KDE on both.

Fitzcarraldo's blog
Back to top
View user's profile Send private message
transsib
l33t
l33t


Joined: 26 Jul 2003
Posts: 838

PostPosted: Sun Jul 01, 2018 5:36 am    Post subject: Reply with quote

Dear Fitzcarraldo :D

it´ s finally good again due to cleaning up shit like you pointed out
Only now that I booted up the box do I know the difference: X finally loads the
proper keymap.
I will now go ahead and follow your advice in your recent posting.
Having several files and several entries for the same ... redundancy or nonsense?

Might as well install that openrazer although I never intended to do overlay.

Again, I thank everyone for their help, khayyam, geki and Fithcarraldo!
Back to top
View user's profile Send private message
Display posts from previous:   
Reply to topic    Gentoo Forums Forum Index Desktop Environments All times are GMT
Page 1 of 1

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum