users of xorg, in particular on FreeBSD 11.3

Niclas Zeising zeising at
Mon Mar 23 21:01:04 UTC 2020

In ports r528813 I switched FreeBSD 11 (including FreeBSD 11.3 and the 
upcoming 11.4) back to use the legacy rule set.  This means that once 
you have installed libxkbcommon 0.10.0_2 on FreeBSD 11, things should 
work as normal, and the environment variable XKB_DEFAULT_RULES does not 
need to be changed.

If you are on FreeBSD 12 or later, and are using xf96-input-keyboard, 
you might still need to set this env variable.  Please see the 
instructions below.


On 2020-03-21 00:41, Niclas Zeising wrote:
> [ This is cross-posted across several mailing lists for maximum 
> visibility.  Please respect reply-to and keep replies to x11 at 
> . Thank you! ]
> In order to improve support when using evdev to manage input devices, in 
> particular keyboards, we have switched the default in x11/libxkbcommon 
> to the evdev instead of the legacy ruleset.  This was done in ports 
> r528813 .
> On FreeBSD 11.3, the default configuration still requires the legacy 
> ruleset.
> If you are using FreeBSD 11.3, or if you are using xf86-input-keyboard 
> on FreeBSD 12 or later, you need to change the ruleset used by 
> x11/libxkbcommon.
> If you have issues with your keyboard, most notably arrow keys, and if 
> /var/log/Xorg.*.log shows that the "kbd" or "keyboard" driver is being 
> used, you need to switch to legacy rules by setting the environment 
> variable XKB_DEFAULT_RULES to xorg.
> The easiest way to accomplish this is by adding it to your shell startup 
> file.
> As an example, for users of [t]csh, put
>    setenv XKB_DEFAULT_RULES xorg
> in ~/.login
> For users of bourne type shells (sh, bash, ksh, zsh, ...) instead put
> export XKB_DEFAULT_RULES=xorg
> in ~/.profile
> Regards

Niclas Zeising
FreeBSD Graphics Team

More information about the freebsd-current mailing list