Kinesis Freestyle2: fn keys problem on Arch Linux
Update
The solution from this note is now part of the driver itself, so this note is just for a history!
The problem
Some of the new owners of Kineis Freestyle2 keyboards can find that the Volume Up/Down, Mute, and Calculator buttons aren’t working.
Chris Waldon had a deep dive into the problem.
He ended up with his driver, kfreestyle2d.
The problem is that on some systems driver is not starting correctly.
As I found out, there are two problems:
- Loading
uinput
kernel module - Tune permissions
The solution
Step 1: Load “uinput” kernel module
Create a systemd service, that will load the module.
Here’s a config for the service, which is a config file at /etc/systemd/system/uinput-load.service
:
[Unit]
Description=Load uinput kernel module
[Service]
Type=oneshot
ExecStart=/sbin/modprobe uinput
[Install]
WantedBy=sysinit.target
Run systemctl enable uinput-load
to start automatically on startup.
And let’s ensure systemd will load driver after the kernel module.
Add line to the /etc/systemd/system/kfreestyle2d.service
to the [Unit]
section:
After=uinput-load.service
Step 2: Tune permissions
Create udev
rule at /etc/udev/rules.d/99-uinput.rules
With following content:
KERNEL=="uinput", MODE="0660", GROUP="uinput"
The group should be the same as in /etc/systemd/system/kfreestyle2d.service
Run sudo udevadm control --reload-rules
And then just the system.