Compare commits

..
30 changed files with 242 additions and 844 deletions

No files matched your search

-8
View File
@@ -1,8 +0,0 @@
g15daemon (1.9.5.3-3) unstable; urgency=low
* The default key to switch application is changes:
now we use L1 (round small key near the display, instead of MR key.
This will allow other application to use MR (i.e. g15macro).
-- Giacomo Catenazzi <cate@debian.org> Mon, 28 Apr 2008 08:36:27 +0200
+2 -31
View File
@@ -1,35 +1,6 @@
g15daemon for Debian g15daemon for Debian
-------------------- --------------------
<possible notes regarding this package - if none, delete this file>
Debian 'xkeyboard-config' package already have support for g15 -- Anthony J. Mirabella <mirabeaj@gmail.com>, Thu, 28 Sep 2006 04:46:06 -0400
keyboards, so you don't need to exec 'xmodmap' as described on
original documentations. Anyway you should configure your
xorg.conf file, so that xorg will understand the extra keys.
To have the full support of the extra keys, you should edit the
xorg configuration file /etc/X11/xorg.conf . The 'XkbModel' should
be "logitech_g15".
I.e. on my machine:
Section "InputDevice"
Identifier "Generic Keyboard"
Driver "kbd"
Option "CoreKeyboard"
Option "XkbRules" "xorg"
Option "XkbModel" "logitech_g15"
Option "XkbLayout" "us"
EndSection
Also in KDE and gnome you should set the g15daemon keyboard.
In KDE you find the configuration in:
Control Center
Regional & Accessibility
Keyboard Layout
On the right at the top "Keyboard model" select:
"Logitech G15 extra keys via G15daemon"
-- Giacomo Catenazzi <cate@debian.org> Mon, 30 Aug 2007 08:04:22 +0200
+104 -223
View File
@@ -1,227 +1,108 @@
g15daemon (1.9.5.3-12) unstable; urgency=medium g15daemon 1.9.5.3 edgy; urgency=low
* BugFix: plugins/g15daemon_net.c: ensure that OOB traffic is not mixed with
* Add -fcommon compiler flag for compatibility with GCC 10. normal image buffers.
(Closes: bug#957243) * Feature: Add --set-backlight to allow clients (and the backlight button)
* Compliant to policy 4.5.0 to set the backlight level for the currently shown screen only.
Default is now to disallow clients changing backlight, and to set
-- Alexander Ponyatykh <lazyranma@gmail.com> Tue, 28 Jul 2020 23:37:13 +0300 backlight globally via the button.
g15daemon (1.9.5.3-11) unstable; urgency=medium -- Mike Lampard <mlampard@users.sourceforge.net> Thu, 31 Jan 2008 15:47:06 +1030
* Reinitialize on eny error code, not only on a negative one. g15daemon 1.9.5.2 edgy; urgency=high
* Remove unused variables. (Closes: bug#688465) * BugFix: IS_USER_SELECTED client command was broken. fix it.
* Compliant to policy 4.4.1 * BugFix: restore client ability to change backlight state.
-- Alexander Ponyatykh <lazyranma@gmail.com> Tue, 19 Nov 2019 00:50:44 +0300 -- Mike Lampard <mlampard@users.sourceforge.net> Sat, 26 Jan 2008 11:36:04 +1030
g15daemon (1.9.5.3-10) unstable; urgency=medium g15daemon 1.9.5.1 edgy; urgency=high
* BugFix: If lcd refresh is requested whilst processing, refreshes were missed.
* Rebuild (no source changes). * Optimisation: The delay between screen updates is no longer required. remove.
-- Andrej Shadura <andrewsh@debian.org> Sat, 16 Nov 2019 19:25:13 +0100 g15daemon 1.9.5 edgy; urgency=low
* Add example udev helper scripts to contrib directory.
g15daemon (1.9.5.3-9) unstable; urgency=medium * API: Add NEVER_SELECT cmd to client API to enforce non-display on
client-switch. Used by G15Macro if available.
[ Alexander Ponyatykh ] * Debug: Add segfault handler to libg15daemon_client to aid debugging
* Reintroduce package. (Closes: bug#928158) clients.
* Convert source to 3.0 (quilt) format. * Feature: Add screendump ability. Pressing M1+M3 simultaneously will write
* Migrate from cdbs to debhelper. a pbm format image of the currently displayed screen to
* Merge from Ubuntu: /tmp/g15daemon-sc-?.pbm, where ? is an incremental number.
- libg15daemon_client/g15daemon_net.c: Fix a potential buffer overflow. * BugFix: Only wakeup display thread if LCD buffer is visible.
* debian/patches/07-reinit-on-any-error.diff: reinitialize on any error * Packaging: Fix debian packaging to include plugins.
returned by libusb to correctly recover after suspend/resume. (LP: #1357556)
* /etc/init.d/g15daemon: overhaul. g15daemon 1.9.4 edgy; urgency=low
- Replace /dev/input/uinput with /dev/uinput. (Closes: bug#687663). * Debug: Log warning if keyboard disappears.
- Use "udevadm settle" instead of polling /dev/uinput. * Bugfix: Fix autoconf autodetect bugs re uinput plugin.
- Use log_*_msg functions instead of echo. * Feature: If autodetection of uinput fails, configure now has a
- Add dependency on $remote_fs. --disable-uinput override.
- Remove bashism. (Closes: bug#772244) * Feature: WIP should now compile and run on Linux, MacOSX, and Solaris (v10+).
- Return 0 exit code if the daemon fails to start. Only Linux and Solaris have been tested.
(LP: #617101, LP: #1103275) * Debug: Add more debugging to plugin loader.
- Don't stop or restart on udev events, because g15daemon now properly * Debug: Log build date,OS and GCC version.
handles replugging. * Feature: Plugin loader will now use DEEP_BIND if available, hopefully
* Remove build dependency on libusb. resolving conflicts on OS's that support it.
* Remove dependency on libg15daemon-client1 for g15daemon. * Feature: Solaris support. Requires some end-user changes to the usb
* Add dependency on udev for g15daemon. stack at the moment. Documentation coming soon.
* Change priority of packages to optional. * BugFix: Plugin loader is now much more robust.
* Add native systemd service. (LP: #1441365) * Feature: Add OS specific documentation for Linux and FreeBSD.
* /etc/default/g15daemon: remove SWITCH_KEY option to keep systemd service Compilation and use on FreeBSD is completely untested.
file simple. * Feature: Debug verbosity of g15daemon_log is now variable.
* Add subsystem check to udev matching rules. * Feature: Plugin filenames are now cached in g15daemon.conf to allow
* Multiarchify the library packages. (Closes: bug#812952) (manual, at this stage) changing of load-order.
* Do not install *.la files. * Portability: Add our own daemon() function if platform doesn't have native
* Change package description. (Closes: bug#802652) support.
* TidyUp: Wrap keyboard read function.
[ Andrej Shadura ] * TidyUp: Make all plugin-internal functions static.
* Wrap and sort. * Portability: Remove mutexes on Solaris, as libusb (and therefore libg15)
* Use debhelper-compat instead of debian/compat. blocks on read.
* d/changelog: Remove trailing whitespaces. * Optimisation: Use pthread conditional variable to signal LCD state change.
* d/control: Add Vcs-* field. Further reduces unnecessary wakeups.
* d/watch: Use https protocol.
g15daemon 1.9.3 edgy; urgency=low
-- Andrej Shadura <andrewsh@debian.org> Sat, 19 Oct 2019 21:15:39 +0200 * BugFix: The documentation for --switch was inverted. Fix.
* Debug: Print list of commandline args when in debug mode
g15daemon (1.9.5.3-8.3) unstable; urgency=medium * BugFix: The decreased delay caused keypresses to be misread on some
machines. REVERT.
* Non-maintainer upload.
* debian/control: Drop unnecessary automake1.9 build deps. (Closes: g15daemon 1.9.2 edgy; urgency=low
#724371) * BugFix: Add exitfunc to net plugin for exit notification.
* BugFix: Use pause() instead of sleeping
-- Eric Dorland <eric@debian.org> Tue, 04 Mar 2014 23:50:12 -0500 * BugFix: create leaving var as volatile.
* BugFix: Add NAME section to g15daemon_client manpages
g15daemon (1.9.5.3-8.2) unstable; urgency=low * Tweak delay between successive keyboard reads. This reduces cpu load by
50% on my system.
* Non-maintainer upload. * Bugfix: Ensure that all plugin exit functions are called on leaving.
* Use ATTR instead of SYSFS in udev rules (closes: #573434). * Bugfix: if keypress event is received (very early in the startup process,
* Remove references to other libraries from dependency_libs field the daemon would crash. Check that expected pointers are valid.
(closes: #629592). * Bugfix: Dont attempt compilation of uinput plugin if headers are
unavailable.
-- Luk Claes <luk@debian.org> Tue, 31 May 2011 07:33:52 +0200 * Bugfix: Write a blank buffer to the LCD before exiting.
* Feature: Add --lcdlevel cmdline option to allow setting default LCD brightness level
g15daemon (1.9.5.3-8.1) unstable; urgency=low
g15daemon 1.9.1 edgy; urgency=low
* Non-maintainer upload. * BugFix: Plugins are now installed in ${PREFIX}/{${LIBDIR}/g15daemon/${VERSION}/plugins
* Send a sync event after key up/down (closes: #567213). * Feature: OS-X support thanks to Fabrizio Sestito.
* Bugfix: libg15daemon_client: keypresses were being corrupted.
-- Julien Cristau <jcristau@debian.org> Sun, 25 Jul 2010 11:39:22 +0200 * Bugfix: libg15daemon_client: use g15_recv rather than recv.
* Bugfix: use default scheduling for all threads.
g15daemon (1.9.5.3-8) unstable; urgency=low * Optimisation: minor optimisation of lcd_cycle() code.
* Security: repair some potential security holes.
* Put the third argument (modes) on open with O_CREAT (Closes: #559649) * Bugfix: Backlight status was being mis-applied when cycling screens.
* remove rpath * Bugfix: Language bindings were not being distributed.
-- Giacomo Catenazzi <cate@debian.org> Fri, 18 Dec 2009 07:52:26 +0100 g15daemon 1.9.0 edgy; urgency=low
* Feature: Add plugin API
g15daemon (1.9.5.3-7) unstable; urgency=low * Feature: partially rewritten event core
* Feature: updated g15daemon_xmms_spectrum plugin with new features, available in trunk/g15daemon_audio_plugins (SVN)
* Change priority of libg15daemon-client1 from extra to optional * Feature: Clock is now a plugin
(mumble package needs it) * Feature: dependency on libdaemon is now removed
* Feature: g15daemon is now dependant on libg15render.
-- Giacomo Catenazzi <cate@debian.org> Tue, 01 Sep 2009 19:50:38 +0200 * Feature: Clock now includes analog clock thanks to Rasta Freak <igor.jusic@zg.t-com.hr>
* Moved g15daemon_xmms_spectrum plugin to separate package
g15daemon (1.9.5.3-6) unstable; urgency=low
g15daemon (1.2.1-1) breezy; urgency=low
* Shared devices (lcd dispaly + audio) are not good handled
by udev script. Adding workaround until improving
programs to handle disconnections (Closes: #541780)
* Add debugging flag (and code) for init.d and udev scripts
* Change syslog facility: from user to daemon
* better (and more secure) screenshort creation in /tmp
-- Giacomo Catenazzi <cate@debian.org> Wed, 19 Aug 2009 07:33:22 +0200
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
(Closes: #475000).
* Usual updates
-- Giacomo Catenazzi <cate@debian.org> Thu, 06 Aug 2009 08:32:33 +0200
g15daemon (1.9.5.3-3) unstable; urgency=low
* Changing default in /etc/default/g15daemon: Use L1 key instead of MR
as actual upstream default and allowing to use g15macro
(Closes: #478069)
* Removed the X11 setup on man page, because it is not relevant
to recent distributions and could confuse our users (Closes: #463078)
-- Giacomo Catenazzi <cate@debian.org> Mon, 28 Apr 2008 08:47:07 +0200
g15daemon (1.9.5.3-2) unstable; urgency=low
* Recommend xkb-data instead of keyboard-config. Adapted patch from
Amaya, thanks! (Closes: #474451).
-- Giacomo Catenazzi <cate@debian.org> Mon, 07 Apr 2008 19:56:34 +0200
g15daemon (1.9.5.3-1) unstable; urgency=low
* New upstream version
-- Giacomo Catenazzi <cate@debian.org> Thu, 14 Feb 2008 08:08:03 +0100
g15daemon (1.9.5.2-2) unstable; urgency=low
* Handle better errors in the init.d script (Closes: #463073)
-- Giacomo Catenazzi <cate@debian.org> Tue, 29 Jan 2008 20:15:35 +0100
g15daemon (1.9.5.2-1) unstable; urgency=low
* New upstream version
* Change default behaviour: to switch client use MR (as already documented
in /etc/default/g15daemon, but wrongly implemented)
-- Giacomo Catenazzi <cate@debian.org> Mon, 28 Jan 2008 09:12:16 +0100
g15daemon (1.9.1.0.svn346-1) unstable; urgency=low
* New upstream version (from svn)
-- Giacomo Catenazzi <cate@debian.org> Tue, 18 Dec 2007 09:15:42 +0100
g15daemon (1.9.0-wip.20070910-5) unstable; urgency=low
* change priority to "extra"
* force libg15render-dev versioned dependencies
-- Giacomo Catenazzi <cate@debian.org> Tue, 09 Oct 2007 13:28:56 +0200
g15daemon (1.9.0-wip.20070910-4) unstable; urgency=low
* Correct building errors (closes: #441919, #442995)
-- Giacomo Catenazzi <cate@debian.org> Tue, 18 Sep 2007 20:29:54 +0200
g15daemon (1.9.0-wip.20070910-3) unstable; urgency=low
* first try to make a debian/rules full working for
svn and released version
* fix directory fixes (closes: #442296)
-- Giacomo Catenazzi <cate@debian.org> Fri, 14 Sep 2007 20:59:27 +0200
g15daemon (1.9.0-wip.20070910-2) unstable; urgency=low
* pause() instead of busy loop.
-- Giacomo Catenazzi <cate@debian.org> Tue, 11 Sep 2007 06:12:01 +0200
g15daemon (1.9.0-wip.20070910-1) unstable; urgency=low
* New upstream release (from svn)
* Don't install plugin in /usr/share (Closes: #441619)
-- Giacomo Catenazzi <cate@debian.org> Mon, 10 Sep 2007 23:02:14 +0200
g15daemon (1.9.0-2) unstable; urgency=low
* Updates: better init.d scripts (with support for L1 key)
* install also the sample plugin (clock, net, uinput)
-- Giacomo Catenazzi <cate@debian.org> Thu, 30 Aug 2007 23:31:18 +0200
g15daemon (1.9.0-1) unstable; urgency=low
* New upstream release
-- Giacomo Catenazzi <cate@debian.org> Tue, 28 Aug 2007 20:09:54 +0200
g15daemon (1.2.7-1) unstable; urgency=low
* Initial release * Initial release
-- Giacomo Catenazzi <cate@debian.org> Mon, 27 Aug 2007 20:00:20 +0200 -- Anthony J. Mirabella <mirabeaj@gmail.com> Thu, 28 Sep 2006 04:46:06 -0400
+1
View File
@@ -0,0 +1 @@
4
+17 -51
View File
@@ -1,62 +1,28 @@
Source: g15daemon Source: g15daemon
Section: utils Section: utils
Priority: optional Priority: optional
Maintainer: Alexander Ponyatykh <lazyranma@gmail.com> Maintainer: Anthony J. Mirabella <mirabeaj@gmail.com>
Uploaders: Build-Depends: debhelper (>= 4.0.0), autotools-dev, libg15-dev, libg15render-dev
Andrej Shadura <andrewsh@debian.org> Standards-Version: 3.6.2
Build-Depends:
debhelper-compat (= 12),
libfreetype6-dev,
libg15-dev (>= 1.2.7-3),
libg15render-dev (>= 1.2.0.svn250-2),
libtool
Standards-Version: 4.5.0
Homepage: https://sourceforge.net/projects/g15daemon/
Vcs-Browser: https://salsa.debian.org/debian/g15daemon
Vcs-Git: https://salsa.debian.org/debian/g15daemon.git
Package: g15daemon Package: g15daemon
Section: utils
Architecture: any Architecture: any
Pre-Depends: Depends: ${shlibs:Depends}, ${misc:Depends}, libg15daemon-client (= ${Source-Version})
${misc:Pre-Depends} Description: Screen multiplexer for Logitech G15 Keyboard
Depends:
libg15-1 (>= 1.2.7-3),
lsb-base (>= 4.1+Debian3),
udev,
${misc:Depends},
${shlibs:Depends}
Recommends:
xkb-data (>=0.9+cvs.20070428-1)
Description: LCD multiplexer for Logitech G15 Keyboard
G15daemon provides multiple virtual screens for the LCD on the Logitech G15daemon provides multiple virtual screens for the LCD on the Logitech
G15 keyboard and Z10 speakers. It also allows the use of all additional G15 Keyboard
keys of G11 and G15 keyboards, even if the kernel does not support them.
Package: libg15daemon-client
Section: libs
Architecture: any
Depends: ${shlibs:Depends}
Description: Client library for communicating with g15daemon
Provides interface functions for clients that wish to communicate with
a running instance of g15daemon
Package: libg15daemon-client-dev Package: libg15daemon-client-dev
Section: libdevel Section: libdevel
Architecture: any Architecture: any
Multi-Arch: same Depends: libg15daemon-client (= ${Source-Version})
Depends: Description: Development packages for libg15daemon-client
libg15daemon-client1 (= ${binary:Version}), Includes the files needed for developing g15daemon clients
${misc:Depends}
Description: Development files for libg15daemon-client
The g15daemon client library allows applications to use LCD of the Logitech G15
keyboard or Z10 speakers under control of g15daemon.
.
This package provides the development files and static libraries.
Package: libg15daemon-client1
Section: libs
Architecture: any
Multi-Arch: same
Pre-Depends:
${misc:Pre-Depends}
Depends:
${misc:Depends},
${shlibs:Depends}
Description: Client library for communicating with g15daemon
The g15daemon client library allows applications to use LCD of the Logitech G15
keyboard or Z10 speakers under control of g15daemon.
.
This package provides the runtime files.
+5 -23
View File
@@ -1,28 +1,10 @@
This package was debianized by Giacomo A. Catenazzi <cate@debian.org> on This package was debianized by Anthony J. Mirabella <mirabeaj@gmail.com> on
Mon, 27 Aug 2007 20:00:20 +0200. Thu, 28 Sep 2006 04:46:06 -0400.
It was downloaded from http://g15daemon.sourceforge.net/ It was downloaded from <fill in ftp site>
Upstream Authors: Copyright Holder: <put author(s) name and email here>
Mike Lampard <mlampard@users.sf.net>
Sven Ludwig
James Green
Philip Lawatsch <philip@lawatsch.at>
Copyright:
Copyright (c) 2006 Mike Lampard, Philip Lawatsch, and others
License: License:
g15tools is free software; you can redistribute it and/or modify <Put the license of the package here>
it under the terms of the GNU General Public License as published by
the Free Software Foundation; either version 2 of the License, or
(at your option) any later version.
License can be found in the file `/usr/share/common-licenses/GPL-2'.
The Debian packaging is (C) 2007, Giacomo Catenazzi <cate@debian.org>,
(C) 2019 Alexander Ponyatykh <lazyranma@gmail.com> and is licensed under
the GPL v2 (or later), see `/usr/share/common-licenses/GPL-2'.
-1
View File
@@ -1,4 +1,3 @@
FAQ
NEWS NEWS
README README
TODO TODO
-9
View File
@@ -1,9 +0,0 @@
# Defaults for g15daemon initscript
# SWITCH_KEY option was removed. Use DAEMON_OPTS="-s" instead.
# Turn on debugging of g15 init.d and udev scripts
#G15DEBUG="on"
# Additional options that are passed to the Daemon.
DAEMON_OPTS=""
-125
View File
@@ -1,125 +0,0 @@
#! /bin/sh
### BEGIN INIT INFO
# Provides: g15daemon
# Required-Start: $syslog $local_fs $remote_fs
# Required-Stop: $syslog $local_fs $remote_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
# Description: load deamon for Logitech G15 keyboard lcd display
### END INIT INFO
PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin
DAEMON=/usr/sbin/g15daemon
NAME=g15daemon
DESC="Logitech G15 keyboard LCD multiplexer"
[ -x "$DAEMON" ] || exit 0
. /lib/lsb/init-functions
# Include g15daemon defaults if available
if [ -f /etc/default/g15daemon ] ; then
. /etc/default/g15daemon
fi
if [ "$G15DEBUG" = "on" ]; then
log() {
logger -p daemon.debug -t g15 -- "$*"
}
else
log() {
true
}
fi
check_new_init() {
if [ -d /run/systemd/system ] ; then
exit $1
fi
}
load_uinput() {
if [ ! -e /dev/uinput ] ; then
modprobe -q uinput
udevadm settle -t 5 -E /dev/uinput
[ -e /dev/uinput 3 ] || 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() {
start-stop-daemon --stop --quiet --pidfile /var/run/$NAME.pid \
--oknodo --retry 5 --exec $DAEMON
}
case "$1" in
start)
log_daemon_msg "Starting $DESC" $NAME
load_uinput || log_warning_msg "/dev/uinput not found"
do_start
log_end_msg $?
;;
stop)
log_daemon_msg "Stopping $DESC" $NAME
if do_stop ; then
log_end_msg 0
else
log_end_msg 1
exit 1
fi
;;
force-reload)
is_running && $0 restart || exit 0
;;
restart)
log_daemon_msg "Restarting $DESC" $NAME
if ! do_stop ; then
log_end_msg 1
exit 1
fi
# the device is slow to shut-down
sleep 1
load_uinput || log_warning_msg "/dev/uinput not found"
do_start
log_end_msg $?
;;
status)
is_running
exit $?
;;
udev)
check_new_init 0
log "calling g15 udev; action: $ACTION, product $PRODUCT"
if [ "x$ACTION" = "xadd" ] ; then
# If g15daemon is running, it will handle replugging.
is_running && exit 0
load_uinput
do_start
fi
;;
*)
N=/etc/init.d/$NAME
log_action_msg "Usage: $N {start|stop|restart|force-reload|status}"
exit 1
;;
esac
exit 0
+3 -3
View File
@@ -1,3 +1,3 @@
debian/tmp/usr/lib/*/g15daemon/*/plugins/*.so usr/sbin/*
debian/tmp/usr/sbin/g15daemon usr/lib/g15daemon/*/plugins/*
debian/tmp/usr/share/g15daemon/splash/g15logo2.wbmp usr/share/doc/g15daemon*/*
-1
View File
@@ -1 +0,0 @@
Documentation/g15daemon.1
-12
View File
@@ -1,12 +0,0 @@
[Unit]
Description=Logitech G15 keyboard LCD multiplexer
Documentation=man:g15daemon(1)
Wants=remote-fs.target
After=remote-fs.target
[Service]
Type=forking
EnvironmentFile=-/etc/default/g15daemon
ExecStartPre=-/sbin/modprobe -q uinput
ExecStartPre=-/sbin/udevadm settle -t 5 -E /dev/uinput
ExecStart=/usr/sbin/g15daemon $DAEMON_OPTS
-19
View File
@@ -1,19 +0,0 @@
# 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
SUBSYSTEM=="usb", ATTR{idVendor}=="046d", ATTR{idProduct}=="c225", RUN+="/etc/init.d/g15daemon udev", TAG+="systemd",ENV{SYSTEMD_WANTS}+="g15daemon.service"
# Logitech G15 (blue) -- extra keys and LCD
SUBSYSTEM=="usb", ATTR{idVendor}=="046d", ATTR{idProduct}=="c222", RUN+="/etc/init.d/g15daemon udev", TAG+="systemd", ENV{SYSTEMD_WANTS}+="g15daemon.service"
# Logitech G15 v2 (orange) -- extra keys and LCD
SUBSYSTEM=="usb", ATTR{idVendor}=="046d", ATTR{idProduct}=="c227", RUN+="/etc/init.d/g15daemon udev", TAG+="systemd", ENV{SYSTEMD_WANTS}+="g15daemon.service"
# Logitech Z10 -- extra keys and LCD
SUBSYSTEM=="usb", ATTR{idVendor}=="046d", ATTR{idProduct}=="0a07", RUN+="/etc/init.d/g15daemon udev", TAG+="systemd", ENV{SYSTEMD_WANTS}+="g15daemon.service"
# Logitech G15 Gamepanel -- extra keys and LCD
SUBSYSTEM=="usb", ATTR{idVendor}=="046d", ATTR{idProduct}=="c251", RUN+="/etc/init.d/g15daemon udev", TAG+="systemd", ENV{SYSTEMD_WANTS}+="g15daemon.service"
+6 -3
View File
@@ -1,3 +1,6 @@
debian/tmp/usr/include/* usr/include/*
debian/tmp/usr/lib/*/lib*.a usr/lib/lib*.a
debian/tmp/usr/lib/*/lib*.so usr/lib/lib*.so
usr/lib/pkgconfig/*
usr/lib/*.la
usr/share/pkgconfig/*
+1 -1
View File
@@ -1 +1 @@
usr/lib/*/lib*.so.* usr/lib/lib*.so.*
-1
View File
@@ -1 +0,0 @@
debian/tmp/usr/lib/*/lib*.so.*
-1
View File
@@ -1 +0,0 @@
Documentation/g15daemon_client_devel.3
-127
View File
@@ -1,127 +0,0 @@
--- a/Documentation/g15daemon.1
+++ b/Documentation/g15daemon.1
@@ -37,113 +37,6 @@
If all required libraries are installed and in locations known to your operating system, the daemon will slip quietly into the background and a clock will appear on the LCD.
Congratulations! The linux kernel will now output keycodes for all your extra keys.
-.SH "Using the keys in X11"
-Current versions of the Xorg Xserver dont have support for the extra keys that g15daemon provides. This support will be available in the next release of Xorg (7.2).
-
-For now, if you want access to the extra keys for hotkey support in X11, you need to run the xmodmaprc script on each start of X. This script is available in the contrib folder (if g15daemon is installed in the default location, the contrib folder is in /usr/share/doc/g15daemon\-${VERSION}/contrib
-
-Depending on your linux distribution, copying the xmodmaprc file (or pasting the text below) into ~/.Xmodmap may be all that's required.
-
-.SH "Xmodmaprc file"
-Copy the following into ~/.Xmodmap (depending on your distribution) for X11 to recognise all extra G15 keys:
-
-\-\- cut here \-\-
-.br
-keycode 93 = XF86Launch1
-.br
-keycode 129 = XF86Launch8
-.br
-keycode 130 = XF86Launch9
-.br
-keycode 131 = XF86Launch2
-.br
-keycode 132 = XF86Phone
-.br
-keycode 133 = XF86Messenger
-.br
-keycode 136 = XF86LaunchD
-.br
-keycode 137 = XF86Support
-.br
-keycode 138 = XF86Word
-.br
-keycode 143 = XF86LaunchF
-.br
-keycode 144 = XF86AudioPrev
-.br
-keycode 150 = XF86LogOff
-.br
-keycode 152 = XF86Launch5
-.br
-keycode 153 = XF86AudioNext
-.br
-keycode 160 = XF86AudioMute
-.br
-keycode 161 = XF86Travel
-.br
-keycode 162 = XF86AudioPlay
-.br
-keycode 163 = XF86Spell
-.br
-keycode 164 = XF86AudioStop
-.br
-keycode 170 = XF86VendorHome
-.br
-keycode 174 = XF86AudioLowerVolume
-.br
-keycode 176 = XF86AudioRaiseVolume
-.br
-keycode 177 = XF86Launch4
-.br
-keycode 178 = XF86HomePage
-.br
-keycode 182 = XF86Away
-.br
-keycode 183 = XF86WebCam
-.br
-keycode 184 = XF86Launch0
-.br
-keycode 188 = XF86Music
-.br
-keycode 190 = XF86Launch6
-.br
-keycode 194 = XF86Forward
-.br
-keycode 195 = XF86Send
-.br
-keycode 205 = XF86Calendar
-.br
-keycode 208 = XF86Launch7
-.br
-keycode 209 = XF86LaunchB
-.br
-keycode 210 = XF86LaunchC
-.br
-keycode 215 = XF86Save
-.br
-keycode 219 = XF86WWW
-.br
-keycode 220 = XF86LaunchE
-.br
-keycode 223 = XF86Sleep
-.br
-keycode 228 = XF86Pictures
-.br
-keycode 231 = XF86LaunchA
-.br
-keycode 236 = XF86Mail
-.br
-keycode 237 = XF86AudioMedia
-.br
-keycode 246 = XF86iTouch
-.br
-keycode 247 = XF86Launch3
-.br
-keycode 249 = XF86ToDoList
-.br
-keycode 251 = XF86Calculater
-.br
-\-\- end cutting \-\-
.SH "AUTHORS"
The latest release of g15daemon is available at
.P
--- a/Documentation/g15daemon_client_devel.3
+++ b/Documentation/g15daemon_client_devel.3
@@ -55,7 +55,7 @@
int retval = 0;
int screen_fd = new_g15_screen( G15_WBMPBUF );
-... do processing and display here ...
+ ... do processing and display here ...
retval = g15_close_screen( screen_fd );
-39
View File
@@ -1,39 +0,0 @@
--- a/g15daemon/utility_funcs.c
+++ b/g15daemon/utility_funcs.c
@@ -666,12 +666,24 @@
}
int uf_screendump_pbm(unsigned char *buffer,char *filename) {
+ int fd;
FILE *f;
int x,y;
#define WIDTH 40
g15canvas *canvas=g15daemon_xmalloc(sizeof(g15canvas));
memcpy(canvas->buffer,buffer,LCD_BUFSIZE);
- f = fopen(filename,"w+");
+ fd = open(filename, O_CREAT|O_EXCL|O_WRONLY, S_IRUSR|S_IWUSR|S_IRGRP|S_IROTH);
+ if(fd == -1) {
+ g15daemon_log(LOG_WARNING, "uf_screendump_pbm failed: open, %s.\n", strerror(errno));
+ return -1;
+ }
+ f = fdopen(fd,"w");
+ if(f==NULL) {
+ close(fd);
+ g15daemon_log(LOG_WARNING, "uf_screendump_pbm failed: fdopen, %s.\n", strerror(errno));
+ return -1;
+ }
+
fprintf(f,"P1\n160 43\n");
fprintf(f,"# G15 screendump - %s\n\n",filename);
for(y=0;y<43;y++)
@@ -681,7 +693,9 @@
fprintf(f,"\n");
}
- fclose(f);
+ fclose(f);
+ fsync(fd);
+ close(fd);
free(canvas);
return 0;
}
-11
View File
@@ -1,11 +0,0 @@
--- a/g15daemon/main.c
+++ b/g15daemon/main.c
@@ -456,7 +456,7 @@
struct passwd *nobody;
unsigned char location[1024];
- openlog("g15daemon", LOG_PID, LOG_USER);
+ openlog("g15daemon", LOG_PID, LOG_DAEMON);
if(strlen((char*)user)==0){
nobody = getpwnam("nobody");
}else {
-11
View File
@@ -1,11 +0,0 @@
--- a/g15daemon/utility_funcs.c
+++ b/g15daemon/utility_funcs.c
@@ -356,7 +356,7 @@
config_items_t * item=NULL;
char line[1024];
- config_fd = open(filename,O_CREAT|O_RDWR|O_TRUNC);
+ config_fd = open(filename,O_CREAT|O_RDWR|O_TRUNC, 0644);
if(config_fd){
snprintf(line,1024,"# G15Daemon Configuration File\n# any items entered before a [section] header\n# will be in the Global config space\n# comments you wish to keep should start with a semicolon';'\n");
write(config_fd,line,strlen(line));
@@ -1,30 +0,0 @@
--- a/plugins/g15_plugin_uinput.c
+++ b/plugins/g15_plugin_uinput.c
@@ -125,6 +125,13 @@
event.value = G15KEY_DOWN;
write (uinp_fd, &event, sizeof(event));
+
+ memset(&event, 0, sizeof(event));
+
+ event.type = EV_SYN;
+ event.code = SYN_REPORT;
+
+ write (uinp_fd, &event, sizeof(event));
}
static void g15_uinput_keyup(unsigned char code)
@@ -137,6 +144,13 @@
event.value = G15KEY_UP;
write (uinp_fd, &event, sizeof(event));
+
+ memset(&event, 0, sizeof(event));
+
+ event.type = EV_SYN;
+ event.code = SYN_REPORT;
+
+ write (uinp_fd, &event, sizeof(event));
}
void (*keyup)(unsigned char code) = &g15_uinput_keyup;
-11
View File
@@ -1,11 +0,0 @@
--- a/libg15daemon_client/g15daemon_net.c
+++ b/libg15daemon_client/g15daemon_net.c
@@ -217,7 +217,7 @@
if(poll(pfd,1,100)>0){
if(pfd[0].revents & POLLPRI && !(pfd[0].revents & POLLERR || pfd[0].revents & POLLHUP || pfd[0].revents & POLLNVAL)) {
memset(packet,0,sizeof(packet));
- msgret = recv(sock, packet, 10 , MSG_OOB);
+ msgret = recv(sock, packet, sizeof(packet) , MSG_OOB);
if (msgret < 1) {
return -1;
}
-23
View File
@@ -1,23 +0,0 @@
Description: Reinitialize on any libusb error.
This allows g15daemon to correctly recover after suspend/resume.
Author: Alexander Ponyatykh <lazyranma@gmail.com>
Bug-Ubuntu: https://bugs.launchpad.net/ubuntu/+source/libusb/+bug/1357556
Forwarded: no
Last-Update: 2019-11-17
===================================================================
--- a/g15daemon/main.c
+++ b/g15daemon/main.c
@@ -203,11 +203,10 @@
g15daemon_send_event(masterlist->current->lcd,
G15_EVENT_KEYPRESS, keypresses);
lastkeys = keypresses;
-
- }else if(retval == -ENODEV && LIBG15_VERSION>=1200) {
+ }else if(retval != G15_NO_ERROR && retval != G15_ERROR_TIMEOUT && LIBG15_VERSION>=1200) {
+ g15daemon_log(LOG_WARNING,"Keyboard error (%d).. Reinitializing\n", retval);
pthread_mutex_lock(&g15lib_mutex);
while((retval=re_initLibG15() != G15_NO_ERROR) && !leaving){
- g15daemon_log(LOG_WARNING,"Keyboard has gone.. Retrying\n");
sleep(1);
}
if(!leaving) {
-44
View File
@@ -1,44 +0,0 @@
Description: Remove unused variables
Global variable keyhandler is declared as pointer to incomplete struct type.
Upon closer inspection, it turned out that this variable and
client_handles_keys are unused.
Author: Alexander Ponyatykh <lazyranma@gmail.com>
Bug-Debian: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=688465
Last-Update: 2019-11-18
===================================================================
--- a/g15daemon/linked_lists.c
+++ b/g15daemon/linked_lists.c
@@ -30,8 +30,6 @@
#include <g15daemon.h>
#include <libg15.h>
-extern lcd_t *keyhandler;
-extern unsigned int client_handles_keys;
extern plugin_info_t *generic_info;
lcd_t static * ll_create_lcd () {
@@ -175,12 +173,6 @@
(*masterlist)->current->lcd->state_changed = 1;
}
- if(&oldnode->lcd == (void*)keyhandler) {
- client_handles_keys = 0;
- keyhandler = NULL;
- g15daemon_log(LOG_WARNING,"Client key handler quit, going back to defaults");
- }
-
if((*masterlist)->head!=oldnode){
(*next)->prev = oldnode->prev;
(*prev)->next = oldnode->next;
--- a/g15daemon/main.c
+++ b/g15daemon/main.c
@@ -53,9 +53,7 @@
int keyboard_backlight_off_onexit = 0;
unsigned int g15daemon_debug = 0;
unsigned int cycle_key;
-unsigned int client_handles_keys = 0;
static unsigned int set_backlight = 0;
-struct lcd_t *keyhandler = NULL;
static int loaded_plugins = 0;
-8
View File
@@ -1,8 +0,0 @@
01-remove-x11-setup-from-man.diff
02-better-screenshort-creation.diff
03-change-syslog-facility.diff
04-open-needs-mode.diff
05-send-a-sync-event-after-key-up-down.diff
06-fix-buffer-overflow.diff
07-reinit-on-any-error.diff
08-remove-unused-variables.diff
-14
View File
@@ -1,14 +0,0 @@
#!/bin/sh
set -e
#DEBHELPER#
#g15daemon.service is normally pulled by udev events at boot time or after
#plugging in a device, and deb-systemd-invoke refuses to start a static service,
#so force it to start using invoke-rc.d
if [ -d /run/systemd/system ] && [ -z "$2" ] && ( [ "$1" = "configure" ] \
|| [ "$1" = "abort-remove" ] ) ; then
invoke-rc.d g15daemon start >/dev/null || true
fi
+103 -6
View File
@@ -1,10 +1,107 @@
#!/usr/bin/make -f #!/usr/bin/make -f
# -*- makefile -*-
# Sample debian/rules that uses debhelper.
# This file was originally written by Joey Hess and Craig Small.
# As a special exception, when this file is copied by dh-make into a
# dh-make output file, you may use that output file without restriction.
# This special exception was added by Craig Small in version 0.37 of dh-make.
DH_VERBOSE = 1 # Uncomment this to turn on verbose mode.
export DEB_CFLAGS_MAINT_APPEND = -fcommon #export DH_VERBOSE=1
%:
dh $@
override_dh_installsystemd: # These are used for cross-compiling and for saving the configure script
dh_installsystemd --no-start # from having to guess our platform (since we know it already)
DEB_HOST_GNU_TYPE ?= $(shell dpkg-architecture -qDEB_HOST_GNU_TYPE)
DEB_BUILD_GNU_TYPE ?= $(shell dpkg-architecture -qDEB_BUILD_GNU_TYPE)
CFLAGS = -Wall -g
ifneq (,$(findstring noopt,$(DEB_BUILD_OPTIONS)))
CFLAGS += -O0
else
CFLAGS += -O2
endif
config.status: configure
dh_testdir
# Add here commands to configure the package.
CFLAGS="$(CFLAGS) -Wl,-z,defs" ./configure --host=$(DEB_HOST_GNU_TYPE) --build=$(DEB_BUILD_GNU_TYPE) --prefix=/usr --mandir=\$${prefix}/share/man --infodir=\$${prefix}/share/info
build: build-stamp
build-stamp: config.status
dh_testdir
# Add here commands to compile the package.
$(MAKE)
#docbook-to-man debian/g15daemon.sgml > g15daemon.1
touch build-stamp
clean:
dh_testdir
dh_testroot
rm -f build-stamp
# Add here commands to clean up after the build process.
-$(MAKE) distclean
ifneq "$(wildcard /usr/share/misc/config.sub)" ""
cp -f /usr/share/misc/config.sub config.sub
endif
ifneq "$(wildcard /usr/share/misc/config.guess)" ""
cp -f /usr/share/misc/config.guess config.guess
endif
dh_clean
install: build
dh_testdir
dh_testroot
dh_clean -k
dh_installdirs
# Add here commands to install the package into debian/g15daemon.
$(MAKE) install DESTDIR=$(CURDIR)/debian/tmp
# Build architecture-independent files here.
binary-indep: build install
# We have nothing to do by default.
# Build architecture-dependent files here.
binary-arch: build install
dh_testdir
dh_testroot
dh_installchangelogs ChangeLog
dh_installdocs
dh_installexamples
dh_install -a --sourcedir=debian/tmp
# dh_installmenu
# dh_installdebconf
# dh_installlogrotate
# dh_installemacsen
# dh_installpam
# dh_installmime
# dh_installinit
# dh_installcron
# dh_installinfo
dh_installman Documentation/g15daemon.1 Documentation/g15daemon_client_devel.3
dh_link
dh_strip
dh_compress
dh_fixperms
# dh_perl
# dh_python
# dh_makeshlibs
dh_installdeb
dh_shlibdeps
dh_gencontrol
dh_md5sums
dh_builddeb
binary: binary-indep binary-arch
.PHONY: build clean binary-indep binary-arch binary install
-1
View File
@@ -1 +0,0 @@
3.0 (quilt)
-7
View File
@@ -1,7 +0,0 @@
# See uscan(1) for format
# Compulsory line, this is a version 3 file
version=3
https://sf.net/g15daemon/g15daemon-([1-9].*)\.tar\.gz