summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'sys-apps/lomoco/files/lomoco-1.0-updated-udev.patch')
-rw-r--r--sys-apps/lomoco/files/lomoco-1.0-updated-udev.patch95
1 files changed, 95 insertions, 0 deletions
diff --git a/sys-apps/lomoco/files/lomoco-1.0-updated-udev.patch b/sys-apps/lomoco/files/lomoco-1.0-updated-udev.patch
new file mode 100644
index 000000000000..783a2d5e712a
--- /dev/null
+++ b/sys-apps/lomoco/files/lomoco-1.0-updated-udev.patch
@@ -0,0 +1,95 @@
+diff --git a/udev/toudev.awk b/udev/toudev.awk
+index 822421d..ada40e5 100644
+--- a/udev/toudev.awk
++++ b/udev/toudev.awk
+@@ -1,15 +1,20 @@
+ #!/bin/awk -f
+ BEGIN {
+ FS = ","
++ print "# udev.rules file for Logitech mouse control using lomoco"
++ print "#"
++ print ""
+ print "ACTION != \"add\", GOTO=\"lomoco_end\""
+- print "SUBSYSTEM != \"usb\", GOTO=\"lomoco_end\""
+- print "SYSFS{idVendor} != \"046d\", GOTO=\"lomoco_end\""
++ print "SUBSYSTEM == \"usb\", ENV{DEVTYPE}==\"usb_device\", GOTO=\"lomoco_start\""
++ print "SUBSYSTEM != \"usb_device\", GOTO=\"lomoco_end\""
++ print ""
++ print "LABEL=\"lomoco_start\""
+ print ""
+ }
+
+ $1 ~ /0xc[a-f0-9][a-f0-9][a-f0-9]/ {
+ print "# " substr($3, index($3, "\"")) ", " $2
+- print "SYSFS{idProduct}==\"" substr($1, index($1, "x")+1) \
++ print "ATTRS{idVendor}==\"046d\", ATTRS{idProduct}==\"" substr($1, index($1, "x")+1) \
+ "\", RUN=\"lomoco\""
+ }
+
+diff --git a/udev/udev.lomoco b/udev/udev.lomoco
+index 9e55511..da896d9 100755
+--- a/udev/udev.lomoco
++++ b/udev/udev.lomoco
+@@ -1,26 +1,36 @@
+-#!/bin/bash
+-
+-case "$DEVPATH" in
+- *usbdev*.*)
+- dev=${DEVPATH##*usbdev}
+- bus=$(printf %03d ${dev%.*})
+- dev=$(printf %03d ${dev#*.})
+-
+- . /etc/sysconfig/logitech_mouse
+-
+- options=
+-
+- if [ -n "$LOGITECH_MOUSE_RESOLUTION" ]; then
+- options="--$LOGITECH_MOUSE_RESOLUTION"
+- fi
+-
+- if [ -z "$LOGITECH_MOUSE_DISABLE_CC" -o "$LOGITECH_MOUSE_DISABLE_CC" = yes ]; then
+- options="$options --no-sms"
+- fi
+-
+- if [ -n "$options" ]; then
+- /usr/bin/lomoco -b $bus -d $dev $options
+- fi
+- ;;
+-esac 2>&1 | /bin/logger -t lomoco
+-
++#!/bin/sh
++#
++# udev helper script for the locomo utility
++#
++
++test -x /usr/bin/lomoco || exit 0
++test -r /etc/lomoco.conf || exit 0
++
++options=
++. /etc/lomoco.conf
++
++if [ -n "$LOGITECH_MOUSE_RESOLUTION" ]; then
++ options="--$LOGITECH_MOUSE_RESOLUTION"
++fi
++
++if [ -z "$LOGITECH_MOUSE_DISABLE_CC" -o "$LOGITECH_MOUSE_DISABLE_CC" = yes ]; then
++ options="$options --no-sms"
++fi
++
++if [ -n "$BUSNUM" ]; then
++ options="$options -b $BUSNUM"
++fi
++
++if [ -n "$DEVNUM" ]; then
++ options="$options -d $DEVNUM"
++fi
++
++if [ -n "$MODEL_ID" ]; then
++ options="$options -p $MODEL_ID"
++fi
++
++if [ -n "$options" ]; then
++ /usr/bin/lomoco $options 2>&1 | \
++ sed -e 's/^[[:blank:]]\+//' -e 's/ \+$//' -e '/^$/ d' | \
++ logger -t lomoco -p daemon.info
++fi