Installing surface-dial-renewed
These files install the renewed driver as a systemd user service. The service runs as your desktop user so it can access your session D-Bus for KDE OSD.
Build and Install the Binary
Automatic install from the repository root:
./renewed_driver/install.sh
Manual install:
cargo install --path renewed_driver
This installs:
~/.cargo/bin/surface-dial-renewed
Install Device Permission Rules
sudo cp renewed_driver/install/70-surface-dial-renewed-uinput.rules /etc/udev/rules.d/
sudo cp renewed_driver/install/70-surface-dial-renewed-input.rules /etc/udev/rules.d/
sudo cp renewed_driver/install/70-surface-dial-renewed-hidraw.rules /etc/udev/rules.d/
sudo udevadm control --reload-rules
sudo udevadm trigger
If the service still cannot access input devices, add your user to the group
that owns /dev/input/event* on your system, then log out and back in:
sudo gpasswd -a "$(whoami)" "$(stat -c '%G' /dev/input/event0)"
Install the User Service
mkdir -p ~/.config/systemd/user
cp renewed_driver/install/surface-dial-renewed.service ~/.config/systemd/user/
systemctl --user daemon-reload
systemctl --user enable --now surface-dial-renewed.service
Check Status and Logs
systemctl --user status surface-dial-renewed.service
journalctl --user -u surface-dial-renewed.service -f
Tune Multitouch Timing
Edit:
~/.config/systemd/user/surface-dial-renewed.service
Example:
ExecStart=%h/.cargo/bin/surface-dial-renewed --mode multitouch --mt-idle-ms 100 --mt-idle-max-ms 1500 --mt-settle-ms 80
Apply changes:
systemctl --user daemon-reload
systemctl --user restart surface-dial-renewed.service
Uninstall
Automatic uninstall from the repository root:
./renewed_driver/uninstall.sh
Manual uninstall:
systemctl --user disable --now surface-dial-renewed.service
rm ~/.config/systemd/user/surface-dial-renewed.service
sudo rm /etc/udev/rules.d/70-surface-dial-renewed-uinput.rules
sudo rm /etc/udev/rules.d/70-surface-dial-renewed-input.rules
sudo rm /etc/udev/rules.d/70-surface-dial-renewed-hidraw.rules
systemctl --user daemon-reload
sudo udevadm control --reload-rules