openterface-qt: add udev rules for user access (#379379)

This commit is contained in:
Sandro
2025-03-03 20:58:40 +01:00
committed by GitHub
+16 -1
View File
@@ -4,9 +4,22 @@
makeDesktopItem,
copyDesktopItems,
fetchFromGitHub,
writeText,
qt6,
libusb1,
}:
let
# Based on upstream instructions: https://github.com/TechxArtisanStudio/Openterface_QT#for-linux-users
udevRules = writeText "60-openterface.rules" ''
# Serial to HID converter for keyboard/mouse control.
# ID 1a86:7523 QinHeng Electronics CH340 serial converter
KERNEL=="ttyUSB[0-9]*", ATTRS{idVendor}=="1a86", ATTRS{idProduct}=="7523", TAG+="uaccess"
# "hidraw" device for accessing the host-target toggleable USB port.
# ID 534d:2109 MacroSilicon Openterface
KERNEL=="hidraw*", ATTRS{idVendor}=="534d", ATTRS{idProduct}=="2109", TAG+="uaccess"
'';
in
stdenv.mkDerivation (final: {
pname = "openterface-qt";
version = "0.1.0";
@@ -33,7 +46,9 @@ stdenv.mkDerivation (final: {
mkdir -p $out/bin
cp ./openterfaceQT $out/bin/
mkdir -p $out/share/pixmaps
cp ./images/icon_256.png $out/share/pixmaps/${final.pname}.png
cp ./images/icon_256.png $out/share/pixmaps/openterface-qt.png
mkdir -p $out/etc/udev/rules.d
cp ${udevRules} $out/etc/udev/rules.d/60-openterface.rules
runHook postInstall
'';