99 lines
2.2 KiB
Markdown
99 lines
2.2 KiB
Markdown
# 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:
|
|
|
|
```bash
|
|
./renewed_driver/install.sh
|
|
```
|
|
|
|
Manual install:
|
|
|
|
```bash
|
|
cargo install --path renewed_driver
|
|
```
|
|
|
|
This installs:
|
|
|
|
```text
|
|
~/.cargo/bin/surface-dial-renewed
|
|
```
|
|
|
|
## Install Device Permission Rules
|
|
|
|
```bash
|
|
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:
|
|
|
|
```bash
|
|
sudo gpasswd -a "$(whoami)" "$(stat -c '%G' /dev/input/event0)"
|
|
```
|
|
|
|
## Install the User Service
|
|
|
|
```bash
|
|
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
|
|
|
|
```bash
|
|
systemctl --user status surface-dial-renewed.service
|
|
journalctl --user -u surface-dial-renewed.service -f
|
|
```
|
|
|
|
## Tune Multitouch Timing
|
|
|
|
Edit:
|
|
|
|
```bash
|
|
~/.config/systemd/user/surface-dial-renewed.service
|
|
```
|
|
|
|
Example:
|
|
|
|
```text
|
|
ExecStart=%h/.cargo/bin/surface-dial-renewed --mode multitouch --mt-idle-ms 100 --mt-idle-max-ms 1500 --mt-settle-ms 80
|
|
```
|
|
|
|
Apply changes:
|
|
|
|
```bash
|
|
systemctl --user daemon-reload
|
|
systemctl --user restart surface-dial-renewed.service
|
|
```
|
|
|
|
## Uninstall
|
|
|
|
Automatic uninstall from the repository root:
|
|
|
|
```bash
|
|
./renewed_driver/uninstall.sh
|
|
```
|
|
|
|
Manual uninstall:
|
|
|
|
```bash
|
|
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
|
|
```
|