-
-
Notifications
You must be signed in to change notification settings - Fork 442
Rewrite udev rule generation #2971
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Rewrite udev rule generation #2971
Conversation
X9VoiD
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Some distro packages and/or packaging scripts might need to be updated to reflect new build time requirements. Not necessarily needed to be addressed in this PR, just taking a note of it.
|
diff from 43c350e --- /tmp/tmp.1frkEfhP8b/usr/lib/udev/rules.d/70-opentabletdriver.rules 2023-10-20 22:59:17.000000000 +0200
+++ 70-opentabletdriver.rules 2023-10-20 23:00:56.000000000 +0200
@@ -1,6 +1,4 @@
-/home/gonx/prog/pkgbuild/opentabletdriver-git/src/OpenTabletDriver/OpenTabletDriver.Desktop/Interop/Input/MacOSVirtualMouse.cs(71,66): warning CS8629: Nullable value type may be null. [/home/gonx/prog/pkgbuild/opentabletdriver-git/src/OpenTabletDriver/OpenTabletDriver.Desktop/OpenTabletDriver.Desktop.csproj]
-# Dynamically generated with the OpenTabletDriver.udev tool. https://github.com/OpenTabletDriver/OpenTabletDriver
-KERNEL=="js[0-9]*", SUBSYSTEM=="input", ATTRS{name}=="OpenTabletDriver Virtual Tablet", RUN+="/usr/bin/env rm %E{DEVNAME}"
+# OpenTabletDriver udev rules generated by eng/linux/generate-rules.sh
KERNEL=="uinput", SUBSYSTEM=="misc", OPTIONS+="static_node=uinput", TAG+="uaccess", TAG+="udev-acl"
# Genius G-Pen 560
KERNEL=="hidraw*", ATTRS{idVendor}=="0458", ATTRS{idProduct}=="5003", TAG+="uaccess", TAG+="udev-acl"
@@ -269,7 +267,6 @@
# Wacom CTL-4100WL
KERNEL=="hidraw*", ATTRS{idVendor}=="056a", ATTRS{idProduct}=="0376", TAG+="uaccess", TAG+="udev-acl"
SUBSYSTEM=="usb", ATTRS{idVendor}=="056a", ATTRS{idProduct}=="0376", TAG+="uaccess", TAG+="udev-acl"
-# Wacom CTL-4100WL
KERNEL=="hidraw*", ATTRS{idVendor}=="056a", ATTRS{idProduct}=="0377", TAG+="uaccess", TAG+="udev-acl"
SUBSYSTEM=="usb", ATTRS{idVendor}=="056a", ATTRS{idProduct}=="0377", TAG+="uaccess", TAG+="udev-acl"
# Wacom CTL-6100WL
@@ -315,7 +312,7 @@
KERNEL=="hidraw*", ATTRS{idVendor}=="0b57", ATTRS{idProduct}=="9091", TAG+="uaccess", TAG+="udev-acl"
SUBSYSTEM=="usb", ATTRS{idVendor}=="0b57", ATTRS{idProduct}=="9091", TAG+="uaccess", TAG+="udev-acl"
SUBSYSTEM=="input", ATTRS{idVendor}=="0b57", ATTRS{idProduct}=="9091", ENV{LIBINPUT_IGNORE_DEVICE}="1"
-# Waltop Slim Tablet 5.8"
+# Waltop Slim Tablet 5.8
KERNEL=="hidraw*", ATTRS{idVendor}=="172f", ATTRS{idProduct}=="0032", TAG+="uaccess", TAG+="udev-acl"
SUBSYSTEM=="usb", ATTRS{idVendor}=="172f", ATTRS{idProduct}=="0032", TAG+="uaccess", TAG+="udev-acl"
SUBSYSTEM=="input", ATTRS{idVendor}=="172f", ATTRS{idProduct}=="0032", ENV{LIBINPUT_IGNORE_DEVICE}="1"
@@ -323,6 +320,9 @@
KERNEL=="hidraw*", ATTRS{idVendor}=="256c", ATTRS{idProduct}=="0061", TAG+="uaccess", TAG+="udev-acl"
SUBSYSTEM=="usb", ATTRS{idVendor}=="256c", ATTRS{idProduct}=="0061", TAG+="uaccess", TAG+="udev-acl"
# Gaomon 1060 Pro
+KERNEL=="hidraw*", ATTRS{idVendor}=="256c", ATTRS{idProduct}=="0064", TAG+="uaccess", TAG+="udev-acl"
+SUBSYSTEM=="usb", ATTRS{idVendor}=="256c", ATTRS{idProduct}=="0064", TAG+="uaccess", TAG+="udev-acl"
+SUBSYSTEM=="input", ATTRS{idVendor}=="256c", ATTRS{idProduct}=="0064", ENV{LIBINPUT_IGNORE_DEVICE}="1"
# Gaomon M6
# Huion H1060P
# Huion H1161
@@ -336,14 +336,14 @@
# Huion HS610
# Huion RTE-100
# Huion RTM-500
-KERNEL=="hidraw*", ATTRS{idVendor}=="256c", ATTRS{idProduct}=="0064", TAG+="uaccess", TAG+="udev-acl"
-SUBSYSTEM=="usb", ATTRS{idVendor}=="256c", ATTRS{idProduct}=="0064", TAG+="uaccess", TAG+="udev-acl"
-SUBSYSTEM=="input", ATTRS{idVendor}=="256c", ATTRS{idProduct}=="0064", ENV{LIBINPUT_IGNORE_DEVICE}="1"
# Huion H641P
KERNEL=="hidraw*", ATTRS{idVendor}=="256c", ATTRS{idProduct}=="0066", TAG+="uaccess", TAG+="udev-acl"
SUBSYSTEM=="usb", ATTRS{idVendor}=="256c", ATTRS{idProduct}=="0066", TAG+="uaccess", TAG+="udev-acl"
SUBSYSTEM=="input", ATTRS{idVendor}=="256c", ATTRS{idProduct}=="0066", ENV{LIBINPUT_IGNORE_DEVICE}="1"
# Artisul A1201
+KERNEL=="hidraw*", ATTRS{idVendor}=="256c", ATTRS{idProduct}=="006d", TAG+="uaccess", TAG+="udev-acl"
+SUBSYSTEM=="usb", ATTRS{idVendor}=="256c", ATTRS{idProduct}=="006d", TAG+="uaccess", TAG+="udev-acl"
+SUBSYSTEM=="input", ATTRS{idVendor}=="256c", ATTRS{idProduct}=="006d", ENV{LIBINPUT_IGNORE_DEVICE}="1"
# Gaomon 1060 Pro
# Gaomon GM156HD
# Gaomon M106K Pro
@@ -391,10 +391,10 @@
# Huion Q620M
# Huion RDS-160
# Huion RTM-500
-KERNEL=="hidraw*", ATTRS{idVendor}=="256c", ATTRS{idProduct}=="006d", TAG+="uaccess", TAG+="udev-acl"
-SUBSYSTEM=="usb", ATTRS{idVendor}=="256c", ATTRS{idProduct}=="006d", TAG+="uaccess", TAG+="udev-acl"
-SUBSYSTEM=="input", ATTRS{idVendor}=="256c", ATTRS{idProduct}=="006d", ENV{LIBINPUT_IGNORE_DEVICE}="1"
# Gaomon 1060 Pro
+KERNEL=="hidraw*", ATTRS{idVendor}=="256c", ATTRS{idProduct}=="006e", TAG+="uaccess", TAG+="udev-acl"
+SUBSYSTEM=="usb", ATTRS{idVendor}=="256c", ATTRS{idProduct}=="006e", TAG+="uaccess", TAG+="udev-acl"
+SUBSYSTEM=="input", ATTRS{idVendor}=="256c", ATTRS{idProduct}=="006e", ENV{LIBINPUT_IGNORE_DEVICE}="1"
# Gaomon M106K
# Gaomon M10K
# Gaomon PD1560
@@ -427,18 +427,15 @@
# Huion WH1409
# Huion WH1409 V2
# Monoprice 10594
-KERNEL=="hidraw*", ATTRS{idVendor}=="256c", ATTRS{idProduct}=="006e", TAG+="uaccess", TAG+="udev-acl"
-SUBSYSTEM=="usb", ATTRS{idVendor}=="256c", ATTRS{idProduct}=="006e", TAG+="uaccess", TAG+="udev-acl"
-SUBSYSTEM=="input", ATTRS{idVendor}=="256c", ATTRS{idProduct}=="006e", ENV{LIBINPUT_IGNORE_DEVICE}="1"
# Gaomon M106K Pro
+KERNEL=="hidraw*", ATTRS{idVendor}=="256c", ATTRS{idProduct}=="006f", TAG+="uaccess", TAG+="udev-acl"
+SUBSYSTEM=="usb", ATTRS{idVendor}=="256c", ATTRS{idProduct}=="006f", TAG+="uaccess", TAG+="udev-acl"
+SUBSYSTEM=="input", ATTRS{idVendor}=="256c", ATTRS{idProduct}=="006f", ENV{LIBINPUT_IGNORE_DEVICE}="1"
# Gaomon M1230
# Gaomon S620
# Huion H320M
# Huion H430P
# Huion HS611
-KERNEL=="hidraw*", ATTRS{idVendor}=="256c", ATTRS{idProduct}=="006f", TAG+="uaccess", TAG+="udev-acl"
-SUBSYSTEM=="usb", ATTRS{idVendor}=="256c", ATTRS{idProduct}=="006f", TAG+="uaccess", TAG+="udev-acl"
-SUBSYSTEM=="input", ATTRS{idVendor}=="256c", ATTRS{idProduct}=="006f", ENV{LIBINPUT_IGNORE_DEVICE}="1"
# XP-Pen Artist 13.3
KERNEL=="hidraw*", ATTRS{idVendor}=="28bd", ATTRS{idProduct}=="000b", TAG+="uaccess", TAG+="udev-acl"
SUBSYSTEM=="usb", ATTRS{idVendor}=="28bd", ATTRS{idProduct}=="000b", TAG+="uaccess", TAG+="udev-acl"
@@ -464,11 +461,11 @@
SUBSYSTEM=="usb", ATTRS{idVendor}=="28bd", ATTRS{idProduct}=="0071", TAG+="uaccess", TAG+="udev-acl"
SUBSYSTEM=="input", ATTRS{idVendor}=="28bd", ATTRS{idProduct}=="0071", ENV{LIBINPUT_IGNORE_DEVICE}="1"
# XP-Pen Star G430
-# XP-Pen Star G430S
-# XP-Pen Star G540
KERNEL=="hidraw*", ATTRS{idVendor}=="28bd", ATTRS{idProduct}=="0075", TAG+="uaccess", TAG+="udev-acl"
SUBSYSTEM=="usb", ATTRS{idVendor}=="28bd", ATTRS{idProduct}=="0075", TAG+="uaccess", TAG+="udev-acl"
SUBSYSTEM=="input", ATTRS{idVendor}=="28bd", ATTRS{idProduct}=="0075", ENV{LIBINPUT_IGNORE_DEVICE}="1"
+# XP-Pen Star G430S
+# XP-Pen Star G540
# XP-Pen Star 06
KERNEL=="hidraw*", ATTRS{idVendor}=="28bd", ATTRS{idProduct}=="0078", TAG+="uaccess", TAG+="udev-acl"
SUBSYSTEM=="usb", ATTRS{idVendor}=="28bd", ATTRS{idProduct}=="0078", TAG+="uaccess", TAG+="udev-acl"
@@ -498,10 +495,10 @@
SUBSYSTEM=="usb", ATTRS{idVendor}=="28bd", ATTRS{idProduct}=="0904", TAG+="uaccess", TAG+="udev-acl"
SUBSYSTEM=="input", ATTRS{idVendor}=="28bd", ATTRS{idProduct}=="0904", ENV{LIBINPUT_IGNORE_DEVICE}="1"
# XP-Pen Deco 01 V2
-# XP-Pen Deco 01 V2 (variant 2)
KERNEL=="hidraw*", ATTRS{idVendor}=="28bd", ATTRS{idProduct}=="0905", TAG+="uaccess", TAG+="udev-acl"
SUBSYSTEM=="usb", ATTRS{idVendor}=="28bd", ATTRS{idProduct}=="0905", TAG+="uaccess", TAG+="udev-acl"
SUBSYSTEM=="input", ATTRS{idVendor}=="28bd", ATTRS{idProduct}=="0905", ENV{LIBINPUT_IGNORE_DEVICE}="1"
+# XP-Pen Deco 01 V2 (variant 2)
# XP-Pen Star G640S
KERNEL=="hidraw*", ATTRS{idVendor}=="28bd", ATTRS{idProduct}=="0906", TAG+="uaccess", TAG+="udev-acl"
SUBSYSTEM=="usb", ATTRS{idVendor}=="28bd", ATTRS{idProduct}=="0906", TAG+="uaccess", TAG+="udev-acl"
@@ -646,25 +643,25 @@
SUBSYSTEM=="usb", ATTRS{idVendor}=="2d80", ATTRS{idProduct}=="6001", TAG+="uaccess", TAG+="udev-acl"
SUBSYSTEM=="input", ATTRS{idVendor}=="2d80", ATTRS{idProduct}=="6001", ENV{LIBINPUT_IGNORE_DEVICE}="1"
# VEIKK S640
-# VEIKK S640 V2
KERNEL=="hidraw*", ATTRS{idVendor}=="2feb", ATTRS{idProduct}=="0001", TAG+="uaccess", TAG+="udev-acl"
SUBSYSTEM=="usb", ATTRS{idVendor}=="2feb", ATTRS{idProduct}=="0001", TAG+="uaccess", TAG+="udev-acl"
SUBSYSTEM=="input", ATTRS{idVendor}=="2feb", ATTRS{idProduct}=="0001", ENV{LIBINPUT_IGNORE_DEVICE}="1"
+# VEIKK S640 V2
# VEIKK A30
-# VEIKK A30 V2
KERNEL=="hidraw*", ATTRS{idVendor}=="2feb", ATTRS{idProduct}=="0002", TAG+="uaccess", TAG+="udev-acl"
SUBSYSTEM=="usb", ATTRS{idVendor}=="2feb", ATTRS{idProduct}=="0002", TAG+="uaccess", TAG+="udev-acl"
SUBSYSTEM=="input", ATTRS{idVendor}=="2feb", ATTRS{idProduct}=="0002", ENV{LIBINPUT_IGNORE_DEVICE}="1"
+# VEIKK A30 V2
# VEIKK A50
-# VEIKK A50 V2
KERNEL=="hidraw*", ATTRS{idVendor}=="2feb", ATTRS{idProduct}=="0003", TAG+="uaccess", TAG+="udev-acl"
SUBSYSTEM=="usb", ATTRS{idVendor}=="2feb", ATTRS{idProduct}=="0003", TAG+="uaccess", TAG+="udev-acl"
SUBSYSTEM=="input", ATTRS{idVendor}=="2feb", ATTRS{idProduct}=="0003", ENV{LIBINPUT_IGNORE_DEVICE}="1"
+# VEIKK A50 V2
# VEIKK A15
-# VEIKK A15 V2
KERNEL=="hidraw*", ATTRS{idVendor}=="2feb", ATTRS{idProduct}=="0004", TAG+="uaccess", TAG+="udev-acl"
SUBSYSTEM=="usb", ATTRS{idVendor}=="2feb", ATTRS{idProduct}=="0004", TAG+="uaccess", TAG+="udev-acl"
SUBSYSTEM=="input", ATTRS{idVendor}=="2feb", ATTRS{idProduct}=="0004", ENV{LIBINPUT_IGNORE_DEVICE}="1"
+# VEIKK A15 V2
# VEIKK VK640
KERNEL=="hidraw*", ATTRS{idVendor}=="2feb", ATTRS{idProduct}=="0005", TAG+="uaccess", TAG+="udev-acl"
SUBSYSTEM=="usb", ATTRS{idVendor}=="2feb", ATTRS{idProduct}=="0005", TAG+="uaccess", TAG+="udev-acl"
@@ -678,10 +675,10 @@
SUBSYSTEM=="usb", ATTRS{idVendor}=="2feb", ATTRS{idProduct}=="0008", TAG+="uaccess", TAG+="udev-acl"
SUBSYSTEM=="input", ATTRS{idVendor}=="2feb", ATTRS{idProduct}=="0008", ENV{LIBINPUT_IGNORE_DEVICE}="1"
# VEIKK VK430
-# VEIKK VK430 V2
KERNEL=="hidraw*", ATTRS{idVendor}=="2feb", ATTRS{idProduct}=="0009", TAG+="uaccess", TAG+="udev-acl"
SUBSYSTEM=="usb", ATTRS{idVendor}=="2feb", ATTRS{idProduct}=="0009", TAG+="uaccess", TAG+="udev-acl"
SUBSYSTEM=="input", ATTRS{idVendor}=="2feb", ATTRS{idProduct}=="0009", ENV{LIBINPUT_IGNORE_DEVICE}="1"
+# VEIKK VK430 V2
# VEIKK Viola (VO1060)
KERNEL=="hidraw*", ATTRS{idVendor}=="2feb", ATTRS{idProduct}=="000b", TAG+="uaccess", TAG+="udev-acl"
SUBSYSTEM=="usb", ATTRS{idVendor}=="2feb", ATTRS{idProduct}=="000b", TAG+="uaccess", TAG+="udev-acl"
@@ -702,11 +699,11 @@
SUBSYSTEM=="usb", ATTRS{idVendor}=="5543", ATTRS{idProduct}=="0054", TAG+="uaccess", TAG+="udev-acl"
SUBSYSTEM=="input", ATTRS{idVendor}=="5543", ATTRS{idProduct}=="0054", ENV{LIBINPUT_IGNORE_DEVICE}="1"
# Artisul M0610 Pro
-# UC-Logic 1060N
-# UGTABLET M708
KERNEL=="hidraw*", ATTRS{idVendor}=="5543", ATTRS{idProduct}=="0081", TAG+="uaccess", TAG+="udev-acl"
SUBSYSTEM=="usb", ATTRS{idVendor}=="5543", ATTRS{idProduct}=="0081", TAG+="uaccess", TAG+="udev-acl"
SUBSYSTEM=="input", ATTRS{idVendor}=="5543", ATTRS{idProduct}=="0081", ENV{LIBINPUT_IGNORE_DEVICE}="1"
+# UC-Logic 1060N
+# UGTABLET M708
# Acepen AP 1060
KERNEL=="hidraw*", ATTRS{idVendor}=="5543", ATTRS{idProduct}=="0082", TAG+="uaccess", TAG+="udev-acl"
SUBSYSTEM=="usb", ATTRS{idVendor}=="5543", ATTRS{idProduct}=="0082", TAG+="uaccess", TAG+="udev-acl"Summed up:
Also mangles names ( |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
You're missing KERNEL=="js[0-9]*", SUBSYSTEM=="input", ATTRS{name}=="OpenTabletDriver Virtual Tablet", RUN+="/usr/bin/env rm %E{DEVNAME}" in rules.
Also note that comment ordering seems different - please double check that they're commented to the appropriate convention, e.g.:
# Tablet One
# Tablet Two
<rule for Tablet One and Two>
and not
# Tablet One
<rule for Tablet One and Two>
# Tablet Two
I noted that e.g. UGTABLET M708 seems to exhibit the latter behavior.
Co-authored-by: Sebastian Jensen <gonx@gonx.dk>
03660c3 to
55dd310
Compare
|
updated diff after 55dd310 --- usr/lib/udev/rules.d/70-opentabletdriver.rules 2023-10-24 17:58:32.000000000 +0200
+++ ../tmp.IsuIGbBz1s/usr/lib/udev/rules.d/70-opentabletdriver.rules 2023-10-24 17:55:05.000000000 +0200
@@ -1,7 +1,6 @@
-/home/gonx/prog/pkgbuild/opentabletdriver-git/src/OpenTabletDriver/OpenTabletDriver.Desktop/Interop/Input/MacOSVirtualMouse.cs(71,66): warning CS8629: Nullable value type may be null. [/home/gonx/prog/pkgbuild/opentabletdriver-git/src/OpenTabletDriver/OpenTabletDriver.Desktop/OpenTabletDriver.Desktop.csproj]
-# Dynamically generated with the OpenTabletDriver.udev tool. https://github.com/OpenTabletDriver/OpenTabletDriver
-KERNEL=="js[0-9]*", SUBSYSTEM=="input", ATTRS{name}=="OpenTabletDriver Virtual Tablet", RUN+="/usr/bin/env rm %E{DEVNAME}"
+# OpenTabletDriver udev rules (https://github.com/OpenTabletDriver/OpenTabletDriver)
KERNEL=="uinput", SUBSYSTEM=="misc", OPTIONS+="static_node=uinput", TAG+="uaccess", TAG+="udev-acl"
+KERNEL=="js[0-9]*", SUBSYSTEM=="input", ATTRS{name}=="OpenTabletDriver Virtual Tablet", RUN+="/usr/bin/env rm %E{DEVNAME}"
# Genius G-Pen 560
KERNEL=="hidraw*", ATTRS{idVendor}=="0458", ATTRS{idProduct}=="5003", TAG+="uaccess", TAG+="udev-acl"
SUBSYSTEM=="usb", ATTRS{idVendor}=="0458", ATTRS{idProduct}=="5003", TAG+="uaccess", TAG+="udev-acl"
@@ -315,7 +314,7 @@
KERNEL=="hidraw*", ATTRS{idVendor}=="0b57", ATTRS{idProduct}=="9091", TAG+="uaccess", TAG+="udev-acl"
SUBSYSTEM=="usb", ATTRS{idVendor}=="0b57", ATTRS{idProduct}=="9091", TAG+="uaccess", TAG+="udev-acl"
SUBSYSTEM=="input", ATTRS{idVendor}=="0b57", ATTRS{idProduct}=="9091", ENV{LIBINPUT_IGNORE_DEVICE}="1"
-# Waltop Slim Tablet 5.8"
+# Waltop Slim Tablet 5.8
KERNEL=="hidraw*", ATTRS{idVendor}=="172f", ATTRS{idProduct}=="0032", TAG+="uaccess", TAG+="udev-acl"
SUBSYSTEM=="usb", ATTRS{idVendor}=="172f", ATTRS{idProduct}=="0032", TAG+="uaccess", TAG+="udev-acl"
SUBSYSTEM=="input", ATTRS{idVendor}=="172f", ATTRS{idProduct}=="0032", ENV{LIBINPUT_IGNORE_DEVICE}="1"Approving aside from the 1 change I've suggested a few minutes ago. I don't really care about the Waltop name being mangled. |
Co-authored-by: Sebastian Jensen <gonx@gonx.dk>
Rewrote generate-rules.sh to use
jqgawkandtr