Import Debian changes 1.9.5.3-5
g15daemon (1.9.5.3-5) unstable; urgency=low
* Handle keyboard device with udev, so detecting detachement
and attachment of keyboarda (Closes: #489978).
* init.d LSB header: try to start before xorg, to be able
to have full access to all extra keys.
* Recent libg15 corrected strange behaviour in new G15 keyboard
(Closes: #494180)
This commit is contained in:
1 parent
c8d7f9138e
commit
f6ad51e268
3 files changed
+100
-35
No files matched your search
Vendored
+11
@@ -1,3 +1,14 @@
|
||||
g15daemon (1.9.5.3-5) unstable; urgency=low
|
||||
|
||||
* Handle keyboard device with udev, so detecting detachement
|
||||
and attachment of keyboarda (Closes: #489978).
|
||||
* init.d LSB header: try to start before xorg, to be able
|
||||
to have full access to all extra keys.
|
||||
* Recent libg15 corrected strange behaviour in new G15 keyboard
|
||||
(Closes: #494180)
|
||||
|
||||
-- Giacomo Catenazzi <cate@debian.org> Thu, 13 Aug 2009 08:20:02 +0200
|
||||
|
||||
g15daemon (1.9.5.3-4) unstable; urgency=low
|
||||
|
||||
* Try to load uinput module, in order to have Gx key working
|
||||
|
||||
Vendored
+68
-35
@@ -6,6 +6,7 @@
|
||||
# Required-Stop: $local_fs
|
||||
# Should-Start: $remote_fs
|
||||
# Should-Stop: $remote_fs
|
||||
# X-Start-Before: xdm kdm gdm ldm sdm
|
||||
# Default-Start: 2 3 4 5
|
||||
# Default-Stop: 0 1 6
|
||||
# Short-Description: load deamon for Logitech G15 keyboard lcd display
|
||||
@@ -18,7 +19,7 @@ DAEMON=/usr/sbin/g15daemon
|
||||
NAME=g15daemon
|
||||
DESC=g15daemon
|
||||
|
||||
test -x $DAEMON || exit 0
|
||||
[ -x "$DAEMON" ] || exit 0
|
||||
|
||||
# Include g15daemon defaults if available
|
||||
if [ -f /etc/default/g15daemon ] ; then
|
||||
@@ -32,39 +33,60 @@ fi
|
||||
set -e
|
||||
|
||||
|
||||
load_uinput () {
|
||||
DEVICE=/dev/input/uinput
|
||||
DEV=".none."
|
||||
if [ ! -e "$DEVICE" ] ; then
|
||||
modprobe -q uinput || true
|
||||
for i in `seq 80`; do
|
||||
if [ -e "$DEVICE" ]; then
|
||||
DEV="$DEVICE"
|
||||
break
|
||||
fi
|
||||
echo -n "."
|
||||
sleep 0.1
|
||||
wait_for_file() {
|
||||
local file=$1
|
||||
local timeout=$2
|
||||
[ "$timeout" ] || timeout=120
|
||||
|
||||
local count=$(($timeout * 10))
|
||||
while [ $count != 0 ]; do
|
||||
[ -e "$file" ] && return 0
|
||||
sleep 0.1
|
||||
count=$(($count - 1))
|
||||
done
|
||||
if [ "$DEV" = ".none." ]; then
|
||||
echo -n "Warning: uinput ($DEVICE) doesn't exist. The G-keys are unsupported..."
|
||||
fi
|
||||
return 1
|
||||
}
|
||||
|
||||
load_uinput() {
|
||||
if [ ! -e /dev/input/uinput ] ; then
|
||||
modprobe -q uinput || true
|
||||
wait_for_file /dev/input/uinput 3 || return 1
|
||||
fi
|
||||
}
|
||||
|
||||
wait_usr_mount() {
|
||||
if [ ! -e "$DAEMON" ] ; then
|
||||
wait_for_file "$DAEMON" 7 || return 1
|
||||
fi
|
||||
}
|
||||
|
||||
is_running() {
|
||||
start-stop-daemon --stop --test --quiet --pidfile \
|
||||
/var/run/$NAME.pid --exec $DAEMON
|
||||
}
|
||||
|
||||
do_start() {
|
||||
start-stop-daemon --start --quiet --pidfile /var/run/$NAME.pid \
|
||||
--exec $DAEMON -- $DAEMON_OPTS
|
||||
}
|
||||
|
||||
do_stop() {
|
||||
$DAEMON -k
|
||||
start-stop-daemon --stop --quiet --pidfile /var/run/$NAME.pid \
|
||||
--oknodo --retry 5 --exec $DAEMON
|
||||
}
|
||||
|
||||
|
||||
case "$1" in
|
||||
start)
|
||||
echo -n "Starting $DESC: "
|
||||
load_uinput
|
||||
start-stop-daemon --start --quiet --pidfile /var/run/$NAME.pid \
|
||||
--exec $DAEMON -- $DAEMON_OPTS
|
||||
load_uinput || echo -n ".../dev/input/uinput not found ..."
|
||||
do_start
|
||||
echo "$NAME."
|
||||
;;
|
||||
stop)
|
||||
echo -n "Stopping $DESC: "
|
||||
$DAEMON -k
|
||||
start-stop-daemon --stop --quiet --pidfile /var/run/$NAME.pid \
|
||||
--oknodo --retry 5 --exec $DAEMON
|
||||
do_stop
|
||||
echo "$NAME."
|
||||
;;
|
||||
#reload)
|
||||
@@ -78,7 +100,7 @@ case "$1" in
|
||||
# echo "Reloading $DESC configuration files."
|
||||
# start-stop-daemon --stop --signal 1 --quiet --pidfile \
|
||||
# /var/run/$NAME.pid --exec $DAEMON
|
||||
#;;
|
||||
#;;
|
||||
force-reload)
|
||||
#
|
||||
# If the "reload" option is implemented, move the "force-reload"
|
||||
@@ -86,24 +108,35 @@ case "$1" in
|
||||
# just the same as "restart" except that it does nothing if the
|
||||
# daemon isn't already running.
|
||||
# check wether $DAEMON is running. If so, restart
|
||||
start-stop-daemon --stop --test --quiet --pidfile \
|
||||
/var/run/$NAME.pid --exec $DAEMON \
|
||||
&& $0 restart \
|
||||
|| exit 0
|
||||
;;
|
||||
is_running && $0 restart || exit 0
|
||||
;;
|
||||
restart)
|
||||
echo -n "Restarting $DESC: "
|
||||
start-stop-daemon --stop --quiet --pidfile \
|
||||
/var/run/$NAME.pid --exec $DAEMON
|
||||
sleep 1
|
||||
start-stop-daemon --start --quiet --pidfile \
|
||||
/var/run/$NAME.pid --exec $DAEMON -- $DAEMON_OPTS
|
||||
do_stop
|
||||
# the device is slow to shut-down
|
||||
sleep 0.5
|
||||
do_start
|
||||
echo "$NAME."
|
||||
;;
|
||||
udev)
|
||||
if [ "x$ACTION" = "xadd" ] ; then
|
||||
load_uinput || true
|
||||
wait_usr_mount || true
|
||||
# it seems udev will not release a device if userspace is still
|
||||
# connected
|
||||
is_running && ( do_stop; sleep 0.5 )
|
||||
do_start
|
||||
elif [ "x$ACTION" = "xremove" ] ; then
|
||||
do_stop
|
||||
else
|
||||
echo "unknow udev action '$ACTION'"
|
||||
exit 1
|
||||
|
||||
fi
|
||||
;;
|
||||
*)
|
||||
N=/etc/init.d/$NAME
|
||||
# echo "Usage: $N {start|stop|restart|reload|force-reload}" >&2
|
||||
echo "Usage: $N {start|stop|restart|force-reload}" >&2
|
||||
echo "Usage: $N {start|stop|restart|force-reload|udev}" >&2
|
||||
exit 1
|
||||
;;
|
||||
esac
|
||||
|
||||
Vendored
+21
@@ -0,0 +1,21 @@
|
||||
# udev rule to start g15daemon when logitech g15 keyboards are attached
|
||||
#
|
||||
# Recognized devices from libg15-1.2.7/libg15.c
|
||||
#
|
||||
|
||||
# Logitech g11 -- extra keys, no LCD
|
||||
SYSFS{idVendor}=="046d", SYSFS{idProduct}=="c225", RUN+="/etc/init.d/g15daemon udev"
|
||||
|
||||
# Logitech G15 (blue) -- extra keys and LCD
|
||||
SYSFS{idVendor}=="046d", SYSFS{idProduct}=="c222", RUN+="/etc/init.d/g15daemon udev"
|
||||
|
||||
# Logitech G15 v2 (orange) -- extra keys and LCD
|
||||
SYSFS{idVendor}=="046d", SYSFS{idProduct}=="c227", RUN+="/etc/init.d/g15daemon udev"
|
||||
|
||||
# Logitech Z10 -- extra keys and LCD
|
||||
SYSFS{idVendor}=="046d", SYSFS{idProduct}=="0a07", RUN+="/etc/init.d/g15daemon udev"
|
||||
|
||||
# Logitech G15 Gamepanel -- extra keys and LCD
|
||||
SYSFS{idVendor}=="046d", SYSFS{idProduct}=="c251", RUN+="/etc/init.d/g15daemon udev"
|
||||
|
||||
|
||||
Reference in new issue
Block a user