diff options
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.patch | 95 |
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 |