Initial commit
This commit is contained in:
@@ -0,0 +1 @@
|
||||
KERNEL=="hidraw*", SUBSYSTEM=="hidraw", ATTRS{idVendor}=="045e", ATTRS{idProduct}=="091b", TAG+="uaccess", TAG+="udev-acl"
|
||||
@@ -0,0 +1,2 @@
|
||||
KERNEL=="event*", SUBSYSTEM=="input", ATTRS{name}=="Surface Dial System Multi Axis", TAG+="uaccess", TAG+="udev-acl"
|
||||
KERNEL=="event*", SUBSYSTEM=="input", ATTRS{name}=="Surface Dial System Control", TAG+="uaccess", TAG+="udev-acl"
|
||||
@@ -0,0 +1 @@
|
||||
KERNEL=="uinput", SUBSYSTEM=="misc", OPTIONS+="static_node=uinput", TAG+="uaccess", TAG+="udev-acl"
|
||||
@@ -0,0 +1,77 @@
|
||||
# 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
|
||||
```
|
||||
|
||||
## 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
|
||||
```
|
||||
@@ -0,0 +1,15 @@
|
||||
[Unit]
|
||||
Description=Surface Dial Renewed Driver
|
||||
After=graphical-session.target
|
||||
PartOf=graphical-session.target
|
||||
|
||||
[Service]
|
||||
Type=simple
|
||||
ExecStart=%h/.cargo/bin/surface-dial-renewed --mode multitouch
|
||||
Restart=on-failure
|
||||
RestartSec=2
|
||||
StandardOutput=journal
|
||||
StandardError=journal
|
||||
|
||||
[Install]
|
||||
WantedBy=default.target
|
||||
Reference in New Issue
Block a user