diff --git a/docs/installation.md b/docs/installation.md index 06b4d925..c9b58919 100644 --- a/docs/installation.md +++ b/docs/installation.md @@ -12,8 +12,6 @@ First install pip, and then run This will not install the Solaar udev rule, which you will need to install manually by copying `~/.local/lib/udev/rules.d/42-logitech-unify-permissions.rules` to `/etc/udev/rules.d` as root. -If you want Solaar rules to simulate input you will have to instead install Solaar's uinput udev rule -from the GitHub repository. ## Installing in macOS @@ -52,8 +50,6 @@ First, install the needed system packages by `make install_apt` or `make install_dnf` or `make install_brew`. These might not install all needed packages in older versions of your distribution. Next, install the Solaar rule via `make install_udev`. -If you are using Wayland instead of X11 you may want to instead `make install_udev_uinput` -so that Solaar rules can simulate input in Wayland. Finally, install Solaar via `make install_pip` or `make install_pipx`. Parts of the installation process require sudo privileges so you may be asked for your password. @@ -129,8 +125,6 @@ For more information see [the rules page](https://pwr-solaar.github.io/Solaar/ru You can install Solaar's udev rule manually by copying the file `rules.d/42-logitech-unify-permissions.rules` as root from the Solaar repository to `/etc/udev/rules.d`. -In Wayland you may want to instead copy -`rules.d-uinput/42-logitech-unify-permissions.rules`. Let udev reload its rules by running `sudo udevadm control --reload-rules`. # Solaar in other languages diff --git a/docs/issues.md b/docs/issues.md index 387ba810..46cc1102 100644 --- a/docs/issues.md +++ b/docs/issues.md @@ -45,7 +45,7 @@ layout: page in some system tray implementations. Changing to a different theme may help. The `--battery-icons=symbolic` option can be used to force symbolic icons. -- Solaar will try to use uinput to simulate input from rules under Wayland or if Xtest is not available +- Solaar uses uinput to simulate input but this needs write permission on /dev/uinput. For more information see [the rules page](https://pwr-solaar.github.io/Solaar/rules). diff --git a/docs/rules.md b/docs/rules.md index 459b6ddc..da19895d 100644 --- a/docs/rules.md +++ b/docs/rules.md @@ -15,9 +15,9 @@ although on GNOME desktop under Wayland, you can use those with the Solaar Gnome You can install it from `https://extensions.gnome.org/extension/6162/solaar-extension`. Under Wayland using keyboard groups may result in incorrect symbols being input for simulated input. Under Wayland simulating inputs when modifier keys are pressed may result in incorrect symbols being sent. -Simulated input uses Xtest if available under X11 or uinput if the user has write access to /dev/uinput. -The easiest way to maintain write access to /dev/uinput is to use Solaar's alternative udev rule by downloading -`https://raw.githubusercontent.com/pwr-Solaar/Solaar/master/rules.d-uinput/42-logitech-unify-permissions.rules` +Simulated input uses uinput to simulate input so the user has to have write access to /dev/uinput. +The easiest way to maintain write access to /dev/uinput is to use Solaar's udev rule by downloading +`https://raw.githubusercontent.com/pwr-Solaar/Solaar/master/rules.d/42-logitech-unify-permissions.rules` and copying it as root into the `/etc/udev/rules.d` directory. You may have to reboot your system for the write permission to be set up. Another way to get write access to /dev/uinput is to run `sudo setfacl -m u:${USER}:rw /dev/uinput` diff --git a/rules.d/42-logitech-unify-permissions.rules b/rules.d/42-logitech-unify-permissions.rules index 5e5f5d66..52224947 100644 --- a/rules.d/42-logitech-unify-permissions.rules +++ b/rules.d/42-logitech-unify-permissions.rules @@ -3,6 +3,7 @@ # Allows non-root users to have raw access to Logitech devices. # Allowing users to write to the device is potentially dangerous # because they could perform firmware updates. +KERNEL=="uinput", SUBSYSTEM=="misc", TAG+="uaccess", OPTIONS+="static_node=uinput" ACTION == "remove", GOTO="solaar_end" SUBSYSTEM != "hidraw", GOTO="solaar_end"