Another correction (in addition to the first one web+ap://toot.mirbsd.org/@mirabilos/statuses/01JAKGX2SCV4FN125PWDYNMFS9
which showed #keyboard-configuration being absolutely useless for Xserver configuration): #Debian keyboard-configuration
is totally useless for this, too.
Turns out it does attempt to use the XKBLAYOUT
, XKBVARIANT
, XKBOPTIONS
to divine the text console keyboard. (But not the X keyboard.) It does not, however, use xkb for that; rather, it has a custom Perl script that assumes one of the default layouts and uses knowledge of them.
So, the suggestion from above… errors out on the next boot (or /etc/init.d/console-setup.sh restart
).
It even does that when you set KMAP
so the result isn’t used!
Turns out that, for a working configuration, you need:
Go to mircvs://contrib/code/Snippets/KBDmir2U.map
; download the latest revision and put as /etc/console-setup/KBDmir2U.map
, then run sudo gzip -n9 /etc/console-setup/KBDmir2U.map
to compress it.
Put into /etc/default/keyboard
the following:
XKBMODEL="pc105"
XKBLAYOUT="us"
XKBVARIANT=""
XKBOPTIONS=""
BACKSPACE="del"
KMAP="/etc/console-setup/KBDmir2U.map.gz"
(Of course, adjust XKBMODEL
to suit.)
This sets one of the default layouts (the one closest to mirkbd
in fact), and does actively specify BACKSPACE="del"
, which we’ll want), and then instructs the init script to load the KMAP
file instead.
This takes care of the Linux text console (only).
For X11 with #Xorg, after installing the files into their proper locations (see above), you need /etc/X11/xorg.conf.d/99-local.conf
with:
Section "InputClass"
Identifier "keyboard defaults"
MatchIsKeyboard "on"
Option "xkb_layout" "mirkbd"
Option "xkb_variant" ""
Option "xkb_options" ""
EndSection
(Of course, set xkb_variant
and xkb_options
to taste.) Also make sure, with this, you’re not using xmodmap
any more (move ~/.Xmodmap
aside).
I haven’t tested how well this plays with #xrdp #xorgxrdp yet.
And for #Wayland, you’re at the mercy of your desktop environment’s settings dialogues (after having installed the #xkb files at their right places and restarted/re-logged-in). See above in this thread as well.