From a51fcf98f879b2505ea002d9b7385ba143c2febc Mon Sep 17 00:00:00 2001 From: Dominic Radermacher Date: Thu, 18 Apr 2024 09:29:38 +0200 Subject: [PATCH] add and install udev rules to enable non-root access (thanks to Patrick Huesmann for contribution) --- CMakeLists.txt | 5 +++++ udev/90-usb-ptouch-permissions.rules | 18 ++++++++++++++++++ 2 files changed, 23 insertions(+) create mode 100644 udev/90-usb-ptouch-permissions.rules diff --git a/CMakeLists.txt b/CMakeLists.txt index d2d491e..38741ee 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -69,3 +69,8 @@ add_custom_target(git-version ALL install(TARGETS ${PROJECT_NAME} DESTINATION bin) install(FILES ${CMAKE_CURRENT_SOURCE_DIR}/ptouch-print.1 DESTINATION ${CMAKE_INSTALL_MANDIR}/man1) + +if(EXISTS /etc/udev/rules.d) + install(FILES udev/90-usb-ptouch-permissions.rules DESTINATION /etc/udev/rules.d) + install(CODE "execute_process(COMMAND udevadm control --reload-rules)") +endif() diff --git a/udev/90-usb-ptouch-permissions.rules b/udev/90-usb-ptouch-permissions.rules new file mode 100644 index 0000000..907a826 --- /dev/null +++ b/udev/90-usb-ptouch-permissions.rules @@ -0,0 +1,18 @@ +# Enable non-root access for known ptouch printers +SUBSYSTEM == "usb", ATTRS{idVendor} == "04f9", ATTRS{idProduct} == "2007", MODE = "0666" +SUBSYSTEM == "usb", ATTRS{idVendor} == "04f9", ATTRS{idProduct} == "2011", MODE = "0666" +SUBSYSTEM == "usb", ATTRS{idVendor} == "04f9", ATTRS{idProduct} == "2019", MODE = "0666" +SUBSYSTEM == "usb", ATTRS{idVendor} == "04f9", ATTRS{idProduct} == "201f", MODE = "0666" +SUBSYSTEM == "usb", ATTRS{idVendor} == "04f9", ATTRS{idProduct} == "202c", MODE = "0666" +SUBSYSTEM == "usb", ATTRS{idVendor} == "04f9", ATTRS{idProduct} == "202d", MODE = "0666" +SUBSYSTEM == "usb", ATTRS{idVendor} == "04f9", ATTRS{idProduct} == "2041", MODE = "0666" +SUBSYSTEM == "usb", ATTRS{idVendor} == "04f9", ATTRS{idProduct} == "205e", MODE = "0666" +SUBSYSTEM == "usb", ATTRS{idVendor} == "04f9", ATTRS{idProduct} == "205f", MODE = "0666" +SUBSYSTEM == "usb", ATTRS{idVendor} == "04f9", ATTRS{idProduct} == "2061", MODE = "0666" +SUBSYSTEM == "usb", ATTRS{idVendor} == "04f9", ATTRS{idProduct} == "2062", MODE = "0666" +SUBSYSTEM == "usb", ATTRS{idVendor} == "04f9", ATTRS{idProduct} == "2073", MODE = "0666" +SUBSYSTEM == "usb", ATTRS{idVendor} == "04f9", ATTRS{idProduct} == "2074", MODE = "0666" +SUBSYSTEM == "usb", ATTRS{idVendor} == "04f9", ATTRS{idProduct} == "20af", MODE = "0666" +SUBSYSTEM == "usb", ATTRS{idVendor} == "04f9", ATTRS{idProduct} == "20df", MODE = "0666" +SUBSYSTEM == "usb", ATTRS{idVendor} == "04f9", ATTRS{idProduct} == "20e0", MODE = "0666" +SUBSYSTEM == "usb", ATTRS{idVendor} == "04f9", ATTRS{idProduct} == "20e1", MODE = "0666"