whereswaldon / kfreestyle2d

Unofficial Kinesis Freestyle 2 Userspace Linux Driver
MIT License
76 stars 21 forks source link

Add uinput loader service #15

Closed tatarianBarbarian closed 1 year ago

tatarianBarbarian commented 1 year ago

Solves #13

This PR adds systemd service for loading uinput kernel module. Which for some reason is not loaded by existing code. Seems like an Arch-specific problem.

whereswaldon commented 1 year ago

Thank you very much for the PR! I'm currently investigating a related permissions issue on the udev device. I hope to resolve this PR and that issue at the same time. Ping me if you don't hear anything for a week.

tatarianBarbarian commented 1 year ago

@whereswaldon, what's new on the investigation?

whereswaldon commented 1 year ago

Thanks for the ping! Seems like Arch Linux in particular is doing something strange with /dev/uinput. My udev rules work by making that file owned by user uinput and group uinput with read/write permissions for both the user and group. That way, the systemd service ought to be able to run and open the device just fine.

However, Arch is setting a file ACL on /dev/uinput that overrides my changes by denying access to most things. This is tricky to resolve because it doesn't work this way on every distro, and I don't really want to carry a bunch of special-snowflake install scripts.

Regardless, this permission issue is definitively not related to your PR, so we can merge it.