Commit 18176a4e authored by Giacomo Catenazzi's avatar Giacomo Catenazzi

Import Upstream version 1.9.5.2

parent 96023974
......@@ -17,3 +17,6 @@ Lars Sanders
Fabrizio Sestito
- changes required to compile on OS-X
- OS-X kext file
Matthew McGee
- Solaris Documentation
......@@ -15,9 +15,9 @@
along with g15daemon; if not, write to the Free Software
Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
(c) 2006 Mike Lampard, Philip Lawatsch, and others
(c) 2006-2008 Mike Lampard, Philip Lawatsch, and others
$Revision: 343 $ - $Date: 2007-12-18 06:26:28 +0100 (Tue, 18 Dec 2007) $ $Author: mlampard $
$Revision: 452 $ - $Date: 2008-01-25 16:04:31 +1030 (Fri, 25 Jan 2008) $ $Author: mlampard $
This daemon listens on localhost port 15550 for client connections,
and arbitrates LCD display. Allows for multiple simultaneous clients.
......@@ -85,17 +85,17 @@ allow clients use of all 'L' keys.
- Add compiletime check for uinput version, should resolve compilation problems on some distro's
- Security improved - the daemon now sets its effective uid to nobody as soon as possible.
1.9.0
- Add plugin API
- partially rewritten event core
- updated g15daemon_xmms_spectrum plugin with new features, available in trunk/g15daemon_audio_plugins (SVN)
- Clock is now a plugin
- dependency on libdaemon is now removed
- g15daemon is now dependant on libg15render.
- Clock now includes analog clock thanks to Rasta Freak <igor.jusic@zg.t-com.hr>
- Feature: Add plugin API
- Feature: partially rewritten event core
- Feature: updated g15daemon_xmms_spectrum plugin with new features, available in trunk/g15daemon_audio_plugins (SVN)
- Feature: Clock is now a plugin
- Feature: dependency on libdaemon is now removed
- Feature: g15daemon is now dependant on libg15render.
- Feature: Clock now includes analog clock thanks to Rasta Freak <igor.jusic@zg.t-com.hr>
- Moved g15daemon_xmms_spectrum plugin to separate package
1.9.1
- Plugins are now installed in ${PREFIX}/{${LIBDIR}/g15daemon/${VERSION}/plugins
- OS-X support thanks to Fabrizio Sestito.
- BugFix: Plugins are now installed in ${PREFIX}/{${LIBDIR}/g15daemon/${VERSION}/plugins
- Feature: OS-X support thanks to Fabrizio Sestito.
- Bugfix: libg15daemon_client: keypresses were being corrupted.
- Bugfix: libg15daemon_client: use g15_recv rather than recv.
- Bugfix: use default scheduling for all threads.
......@@ -103,11 +103,11 @@ allow clients use of all 'L' keys.
- Security: repair some potential security holes.
- Bugfix: Backlight status was being mis-applied when cycling screens.
- Bugfix: Language bindings were not being distributed.
1.9.1->SVN
- Add exitfunc to net plugin for exit notification.
- Use pause() instead of sleeping
- create leaving var as volatile.
- Add NAME section to g15daemon_client manpages
1.9.2
- BugFix: Add exitfunc to net plugin for exit notification.
- BugFix: Use pause() instead of sleeping
- BugFix: create leaving var as volatile.
- BugFix: Add NAME section to g15daemon_client manpages
- Tweak delay between successive keyboard reads. This reduces cpu load by
50% on my system.
- Bugfix: Ensure that all plugin exit functions are called on leaving.
......@@ -116,3 +116,53 @@ allow clients use of all 'L' keys.
- Bugfix: Dont attempt compilation of uinput plugin if headers are
unavailable.
- Bugfix: Write a blank buffer to the LCD before exiting.
- Feature: Add --lcdlevel cmdline option to allow setting default LCD brightness level
1.9.3:
- BugFix: The documentation for --switch was inverted. Fix.
- Debug: Print list of commandline args when in debug mode
- BugFix: The decreased delay caused keypresses to be misread on some
machines. REVERT.
1.9.4
- Debug: Log warning if keyboard disappears.
- Bugfix: Fix autoconf autodetect bugs re uinput plugin.
- Feature: If autodetection of uinput fails, configure now has a
--disable-uinput override.
- Feature: WIP should now compile and run on Linux, MacOSX, and Solaris (v10+).
Only Linux and Solaris have been tested.
- Debug: Add more debugging to plugin loader.
- Debug: Log build date,OS and GCC version.
- Feature: Plugin loader will now use DEEP_BIND if available, hopefully
resolving conflicts on OS's that support it.
- Feature: Solaris support. Requires some end-user changes to the usb
stack at the moment. Documentation coming soon.
- BugFix: Plugin loader is now much more robust.
- Feature: Add OS specific documentation for Linux and FreeBSD.
Compilation and use on FreeBSD is completely untested.
- Feature: Debug verbosity of g15daemon_log is now variable.
- Feature: Plugin filenames are now cached in g15daemon.conf to allow
(manual, at this stage) changing of load-order.
- Portability: Add our own daemon() function if platform doesn't have native
support.
- TidyUp: Wrap keyboard read function.
- TidyUp: Make all plugin-internal functions static.
- Portability: Remove mutexes on Solaris, as libusb (and therefore libg15)
blocks on read.
- Optimisation: Use pthread conditional variable to signal LCD state change.
Further reduces unnecessary wakeups.
1.9.5
- Add example udev helper scripts to contrib directory.
- API: Add NEVER_SELECT cmd to client API to enforce non-display on
client-switch. Used by G15Macro if available.
- Debug: Add segfault handler to libg15daemon_client to aid debugging
clients.
- Feature: Add screendump ability. Pressing M1+M3 simultaneously will write
a pbm format image of the currently displayed screen to
/tmp/g15daemon-sc-?.pbm, where ? is an incremental number.
- BugFix: Only wakeup display thread if LCD buffer is visible.
- Packaging: Fix debian packaging to include plugins.
1.9.5.1:
- BugFix: If lcd refresh is requested whilst processing, refreshes were missed.
- Optimisation: The delay between screen updates is no longer required. remove.
1.9.5.2:
- BugFix: IS_USER_SELECTED client command was broken. fix it.
- BugFix: restore client ability to change backlight state.
......@@ -13,7 +13,8 @@ The current version of G15Daemon understands the following options:
\-v Show version info.
.P
.HP
\-s By default, g15daemon uses the MR key to switch between client screens. Using this switch on the cmdline alters this, making L1 (the small, round, black button below the LCD) the button to achieve this function.
\-s By default, g15daemon uses the L1 key to switch between client screens. Using this switch on the cmdline alters this, making
MR (Macro Record) the button to achieve this function.
.P
.HP
\-k Stop a previously running copy of G15Daemon. For the keys and LCD to work, you'll have to restart the daemon manually.
......@@ -31,7 +32,7 @@ To run the daemon with default options, run:
or
g15daemon \-s
to have the L1 key as the client screen switch.
to have the MR key as the client screen switch.
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.
......
This file contains some frequently asked questions and answers
regarding G15Daemon and it's installation.
Q1. G15daemon complains that it cant find libg15.so.1 !!
Q1. G15daemon complains that it can't find libg15.so.1 !!
Q1a. G15daemon complains that it can't find libg15render.so.1 !!
Answer:
By default, libg15 is installed in /usr/local/lib. Some distros
don't look there for libraries by default. There are two ways
around this - 1. add /usr/local/lib to /etc/ld.so.conf (you'll
need to be root to do this) and run ldconfig or 2. rerun the
libg15 configure script with --prefix=/usr, then make && make in-
stall. This will install libg15 into the /usr/lib directory.
Some of the g15 libraries are installed in /usr/local/lib.
Some distros don't look there for libraries by default. There
are two ways around this -
1. add /usr/local/lib to /etc/ld.so.conf (you'll need to be root)
and run ldconfig or
2.rerun the library configure script with --prefix=/usr,then make
&& make install. This will install libg15 into the /usr/lib
directory.
Q2. G15daemon complains about not receiving a return value
......@@ -33,3 +37,54 @@ you'll find an xmodmaprc script and a bash script in the contrib
directory. Copy the xmodmaprc file to $HOME/.Xmodmap and set the
bash script to run every time X11 starts. KDE has an AutoStart
folder you can put it in, Gnome probably has something similar.
Q4. What devices are currently supported with G15Daemon?
Answer:
G15Daemon is designed to support whatever devices libg15 supports.
Currently,this means the G15 Keyboard(s), the G11 Keyboard and Z10
Speakers.
Q5. Are there any forums supporting the G15Tools?
Answer:
Yes. There are several. G15Tools now has it's own site, including
forums, at www.g15tools.com.There are also forums on the g15daemon
project site: http://sourceforge.net/projects/g15daemon, and a few
Linux distributions have threads setup for G15Tools users.
Q6. Why doesn't G15Daemon use DBUS or DCOP?
Answer:
DBUS is a nice thing, however it's very new and is not available
everywhere. We try to keep dependancies to the minimum, and using
DBUS would mean we have to ensure that G15Daemon is loaded after
the DBUS server, which is something we can't guarantee. Down the
track we will look at providing a DBUS G15Daemon proxy.
Q7. Is G15Daemon able to run on my operating system?
Answer:
G15Daemon currently has support for Linux, MacOSX and Solaris.
Some Linux distributions include the G15Tools in their package
managers, however those may not be up-to-date.
FreeBSD support is possible, see README.FreeBSD for details on
how you can try it out. FreeBSD support is completely untested,
however it may work. Please let us know if it works for you.
Q8. Will G15Daemon ever run on Windows?
Answer:
It might, but not by design. There is commercial support from
Logitech for that operating system.
......@@ -2,10 +2,11 @@ LLIBDIR=@LIBDIR@
SUBDIRS = libg15daemon_client g15daemon plugins
INCLUDES = -I$(top_srcdir)/libg15daemon_client -I$(top_srcdir)/g15daemon
EXTRA_DIST = debian contrib Documentation lang-bindings patches rpm README.usage FAQ LICENSE images
EXTRA_DIST = debian contrib Documentation lang-bindings patches rpm README.usage FAQ LICENSE images README.Linux README.FreeBSD README.Solaris
docdir = $(prefix)/share/doc/$(PACKAGE)-$(VERSION)
doc_DATA = FAQ README.usage README ChangeLog TODO AUTHORS NEWS LICENSE
doc_DATA = FAQ README.usage README ChangeLog TODO AUTHORS NEWS LICENSE README.Linux README.FreeBSD README.Solaris
man1_MANS = $(top_srcdir)/Documentation/g15daemon.1
man3_MANS = $(top_srcdir)/Documentation/g15daemon_client_devel.3
......@@ -15,8 +16,8 @@ image_DATA = images/g15logo2.wbmp
install-data-hook:
if KEXT_INSTALL
cp -Rf $(top_srcdir)/contrib/libusbshield.kext @KEXT_LOCATION@
chown -R root:wheel @KEXT_LOCATION@/libusbshield.kext
cp -Rf $(top_srcdir)/contrib/libusbshield.kext @KEXT_LOCATION@
chown -R root:wheel @KEXT_LOCATION@/libusbshield.kext
endif
dist-hook:
......
This diff is collapsed.
** README G15Daemon 1.2 **
$Revision: 214 $
$Date: 2006-12-25 03:38:09 +0100 (Mon, 25 Dec 2006) $
$Author: aneurysm9 $
$Revision: 357 $
$Date: 2007-12-26 19:36:11 +1030 (Wed, 26 Dec 2007) $
$Author: mlampard $
G15daemon takes control of the G15 keyboard, allowing the use of
......@@ -45,7 +45,8 @@ LCD clients, and cannot be used for other purposes if the
LCD is being used.
[EDIT] As of 30/10/06 svn, the client switch key can be altered
from MR to L1 by specifying -s on the g15daemon commandline.
from L1 to MR by specifying -s on the g15daemon commandline. This
is not recommended.
***
......
$Revision: 377 $
$Date: 2008-01-01 21:56:13 +1030 (Tue, 01 Jan 2008) $
$Author: mlampard $
**** IMPORTANT NOTICE *******************************************************
*** Please Note: G15Daemon is completely untested on FreeBSD.
*** Please report success or failure, any additional steps taken
*** and Operating System version to mlampard@users.sf.net
******************************************************************************
In order for G15Daemon to be able to claim the usb device needed for the LCD and extra keys,
the following _kernel_ configuration changes may be necessary:
First test if ugen is already enabled:
- Plug in the keyboard or other supported USB device.
- dmesg |grep "ugen"
- you should see a line similar to "ugen0: Logitech G15 Keyboard"
If not already enabled:
For FreeBSD versions 5.4 and below, and version 6.0:
Disable uhid
Enable ugen
For FreeBSD versions 5.5, 6.1 and higher:
Enable ugen
Recompile the kernel and reboot.
NetBSD and OpenBSD are not supported at this time due to libusb deficiencies on those platforms.
$Revision: 377 $
$Date: 2008-01-01 21:56:13 +1030 (Tue, 01 Jan 2008) $
$Author: mlampard $
G15Daemon should compile and run just fine with no intervention.
Please read the README and manpages for further info.
*************************************************************************************************
Solaris 10+ support is here as of Jan-1-2008
G15 Daemon 1.9.4
LibG15Render-1.2
LibG15-1.2.5
Fully tested on Solaris 10 and and OpenSolaris 11 (Nevada) with G15 Version 1 and G15 Version 2.
The other keyboards should function but I have not tested them.
I will be trying to keep up with new versions and providing packages as needed.
All packages are in SV datastream format.
You can install them using 'pkgadd -d http://URL to package all'
*************************************************************************************************
G15 Daemon requires Solaris 10 and later with libusb installed.
SUNWlibusb Sun wrapper library for libusb
SUNWlibusbS libusb (source)
SUNWlibusbugen SUN libusb ugen plugin
SUNWlibusbugenS libusbugen plugin (source)
*************************************************************************************************
Compiling from source :
Note : Compiling code on Opensolaris 11 (Nevada) does not guarantee
the binaries will be functional on Solaris 10.
*************************************************************************************************
If installing from SVN you must have the following packages from http://sunfreeware.com
installed into /usr/local/bin :
autoconf-2.60-sol10-x86-local
automake-1.10-sol10-x86-local
libiconv-1.11-sol10-x86-local
make-3.81-sol10-x86-local
perl-5.8.8-sol10-x86-local
gcc-3.4.6-sol10-x86-local
libtool-1.5.24-sol10-x86-local
m4-1.4.7-sol10-x86-local
When compiling LibG15 from SVN you may need to set
LD_LIBRARY_PATH=/lib:/usr/lib:/usr/sfw/lib:/opt/g15/lib
export LD_LIBRARY_PATH
If installing from a release source package you must fist compile and install
at least LibG15 1.2.5 and LibG15Render-1.2.
No other packages are required.
Successfully configure options are as follows :
./configure --prefix=/opt/g15 'LDFLAGS='-L/usr/sfw/lib -L/opt/g15/lib' \
'CPPFLAGS=-I/usr/sfw/include -I/opt/g15/include' && gmake && gmake install
*************************************************************************************************
* The following script can be used to configure the device support to Solaris and Opensolaris.
* G15Daemon runs as user nobody so we must provide read/write permissions for user nobody
* or you must run g15daemon with the option : --user root
*************************************************************************************************
#!/bin/ksh
exec 2>/dev/null
echo "Verifying the ugen driver"
add_drv -m '* 0666 root sys' -i 'ugen' ugen
echo "Adding driver support for Logitech G15 V1"
/usr/sbin/update_drv -a -m '* 0660 nobody sys' -i '"usb46d,c222"' ugen
echo "Adding driver support for Logitech G15 V2"
/usr/sbin/update_drv -a -m '* 0660 nobody sys' -i '"usb46d,c227"' ugen
echo "Adding driver support for Logitech G11 V1"
/usr/sbin/update_drv -a -m '* 0660 nobody sys' -i '"usb46d,c225"' ugen
echo "Adding driver support for Logitech Z-10 V1"
/usr/sbin/update_drv -a -m '* 0660 nobody sys' -i '"usb46d,0a07"' ugen
echo "Finished installing device support."
touch /reconfigure
echo "You must reboot to enable ugen in your device tree"
*************************************************************************************************
The following XML document can be used to integrate G15Daemon into SMF.
1. Save it to a file (Suggested location is /var/svc/manifest/site/g15daemon.xml)
2. verify using 'svccfg validate /path_to_file'
3. import using 'svccfg import /path_to_file'
4. enable using 'svcadm enable g15daemon'
*************************************************************************************************
<?xml version="1.0"?>
<!DOCTYPE service_bundle SYSTEM "/usr/share/lib/xml/dtd/service_bundle.dtd.1">
<service_bundle type='manifest' name='SCIG15daemon:default'>
<service name='site/g15daemon' type='service' version='1'>
<create_default_instance enabled='false' />
<single_instance />
<dependency name='localfs' grouping='require_all' restart_on='none' type='service'>
<service_fmri value='svc:/system/filesystem/local' />
</dependency>
<dependency name='loopback' grouping='require_all' restart_on='none' type='service'>
<service_fmri value='svc:/network/loopback' />
</dependency>
<dependency name='device_files' grouping='require_any' restart_on='restart' type='path'>
<service_fmri value='file://localhost/dev/usb/46d.c222' />
<service_fmri value='file://localhost/dev/usb/46d.c225' />
<service_fmri value='file://localhost/dev/usb/46d.c227' />
<service_fmri value='file://localhost/dev/usb/46d.0a07' />
</dependency>
<exec_method type='method' name='start' exec='/opt/g15/sbin/g15daemon' timeout_seconds='60'/>
<exec_method type='method' name='stop' exec='/opt/g15/sbin/g15daemon -k' timeout_seconds='60' />
<stability value='Unstable' />
<template>
<common_name><loctext xml:lang='C'>G15daemon</loctext></common_name>
<documentation>
<manpage title='g15daemon' section='1' manpath='/opt/g15/share/man' />
<manpage title='g15daemon_client_devl' section='3' manpath='/opt/g15/share/man' />
</documentation>
</template>
</service>
</service_bundle>
*************************************************************************************************
Please read the README and manpages for further info.
*************************************************************************************************
......@@ -5,12 +5,11 @@ TODO list for G15daemon. Not in any particular order.
PARTIALLY DONE - Add manpage and other documentation for the client library and it's
bindings.
- Add client to record & playback macros (being worked on)
DONE (G15Macro) - Add client to record & playback macros.
- add a few simple template client examples in various languages
- Read a configuration file. Currently there are no real user-configurable
options, but ....
DONE - Read a configuration file.
DONE - Allow for clients to change LCD backlight.
......@@ -32,3 +31,5 @@ will allow the client app to exit without taking the screen with them.
use the 'screen' they previously created, as long as they return within the
'time-to-live' period they set before exiting. This will allow for scripts
etc to periodically update.
- Add DBUS proxy.
This is the starting point of g15daemon 2.0. It's a work in progress,
partially functional (it already does most of the stuff the previous version
did), and incredibly untidy...
This is simply here to test and stabilise the API of what will become 2.0
FEATURES:
- True Plugins
- Synchronous Event-based architecture.
- Mostly backward-compatible with versions 1.0 & 1.2.* via the LCDServer plugin.
-
If you want to write a plugin, please see some examples in the plugin
folder. If the current plugin API doesn't do something you think it should,
let us know, it's never too late to change.
TODO:
- re-write most of it, currently it's simply the old code modified to suit
the new architecture, and the new stuff is not much better...
- tidy up the code
- write some updated documentation
- write some plugins!
- write some more documentation and plugins...
- add config options to a configuration file..
- add menu functionality to the clock for plugin/g15daemon configuration
- ???
This diff is collapsed.
#! /bin/sh
set -x
aclocal -I config
libtoolize --force --copy
autoheader
automake --add-missing --copy
autoconf
./configure $*
\ No newline at end of file
/* config.h.in. Generated from configure.in by autoheader. */
/* Date of compilation */
#undef BUILD_DATE
/* Build OS Particulars */
#undef BUILD_OS_NAME
/* Compiler Version */
#undef COMPILER_VERSION
/* Define to 1 if you have the <arpa/inet.h> header file. */
#undef HAVE_ARPA_INET_H
/* Define to 1 if you have the `backtrace' function. */
#undef HAVE_BACKTRACE
/* Define to 1 if you have the `backtrace_symbols' function. */
#undef HAVE_BACKTRACE_SYMBOLS
/* Define if daemon() is available */
#undef HAVE_DAEMON
/* Define to 1 if you have the <dlfcn.h> header file. */
#undef HAVE_DLFCN_H
/* Define to 1 if you have the <execinfo.h> header file. */
#undef HAVE_EXECINFO_H
/* Define to 1 if you have the <fcntl.h> header file. */
#undef HAVE_FCNTL_H
/* Define to 1 if you have the <inttypes.h> header file. */
#undef HAVE_INTTYPES_H
/* Define to 1 if you have the `g15' library (-lg15). */
#undef HAVE_LIBG15
/* Define to 1 if you have the `g15render' library (-lg15render). */
#undef HAVE_LIBG15RENDER
/* Define to 1 if you have the <libg15.h> header file. */
#undef HAVE_LIBG15_H
/* Define to 1 if you have the `m' library (-lm). */
#undef HAVE_LIBM
/* Define to 1 if you have the `pthread' library (-lpthread). */
#undef HAVE_LIBPTHREAD
/* Define to 1 if you have the <linux/input.h> header file. */
#undef HAVE_LINUX_INPUT_H
/* Define to 1 if you have the <linux/uinput.h> header file. */
#undef HAVE_LINUX_UINPUT_H
/* Define to 1 if you have the <memory.h> header file. */
#undef HAVE_MEMORY_H
/* Define to 1 if you have the `memset' function. */
#undef HAVE_MEMSET
/* Define to 1 if you have the `select' function. */
#undef HAVE_SELECT
/* Define to 1 if you have the `socket' function. */
#undef HAVE_SOCKET
/* Define to 1 if you have the <stdint.h> header file. */
#undef HAVE_STDINT_H
/* Define to 1 if you have the <stdlib.h> header file. */
#undef HAVE_STDLIB_H
/* Define to 1 if you have the `strerror' function. */
#undef HAVE_STRERROR
/* Define to 1 if you have the `strftime' function. */
#undef HAVE_STRFTIME
/* Define to 1 if you have the <strings.h> header file. */
#undef HAVE_STRINGS_H
/* Define to 1 if you have the <string.h> header file. */
#undef HAVE_STRING_H
/* Define to 1 if you have the <sys/select.h> header file. */
#undef HAVE_SYS_SELECT_H
/* Define to 1 if you have the <sys/socket.h> header file. */
#undef HAVE_SYS_SOCKET_H
/* Define to 1 if you have the <sys/stat.h> header file. */
#undef HAVE_SYS_STAT_H
/* Define to 1 if you have the <sys/types.h> header file. */
#undef HAVE_SYS_TYPES_H
/* Define to 1 if you have <sys/wait.h> that is POSIX.1 compatible. */
#undef HAVE_SYS_WAIT_H
/* Define if struct uinput_user_dev has id member. */
#undef HAVE_UINPUT_USER_DEV_ID
/* Define to 1 if you have the <unistd.h> header file. */
#undef HAVE_UNISTD_H
/* Define if libusb implementation blocks on read or write */
#undef LIBUSB_BLOCKS
/* Target OS is Darwin */
#undef OSTYPE_DARWIN
/* Target OS is Linux */
#undef OSTYPE_LINUX
/* Target OS is unknown */
#undef OSTYPE_OTHER
/* Target OS is Solaris */
#undef OSTYPE_SOLARIS
/* Name of package */
#undef PACKAGE
/* Define to the address where bug reports for this package should be sent. */
#undef PACKAGE_BUGREPORT
/* Define to the full name of this package. */
#undef PACKAGE_NAME
/* Define to the full name and version of this package. */
#undef PACKAGE_STRING
/* Define to the one symbol short name of this package. */
#undef PACKAGE_TARNAME
/* Define to the version of this package. */
#undef PACKAGE_VERSION
/* Define to the type of arg 1 for `select'. */
#undef SELECT_TYPE_ARG1
/* Define to the type of args 2, 3 and 4 for `select'. */
#undef SELECT_TYPE_ARG234
/* Define to the type of arg 5 for `select'. */
#undef SELECT_TYPE_ARG5
/* Define to 1 if you have the ANSI C header files. */
#undef STDC_HEADERS
/* Version number of package */
#undef VERSION
/* Define to empty if `const' does not conform to ANSI C. */
#undef const
/* Define to `int' if <sys/types.h> does not define. */
#undef pid_t
/* Define to `unsigned int' if <sys/types.h> does not define. */
#undef size_t
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
# G15daemon udev rule to autostart g15daemon on connect
# belongs in udev rules directory such as /etc/udev/rules.d/
# and the script g15daemon-hotplug should be in /usr/bin and made
# executable with chmod +x /usr/bin/g15daemon-hotplug
SYSFS{../name}=="Logitech Logitech Gaming Keyboard", RUN+="/usr/bin/g15daemon-hotplug"
#!/bin/bash
# G15Daemon udev script to start/stop the daemon
# when device is connected.
# requires a udev script in the udev rules directory
# see 99-g15daemon.rules as an example.
case $ACTION in
"add")
# start g15daemon on keyboard connect
sudo g15daemon
;;
"remove")
# kill g15daemon on keyboard disconnect
sudo g15daemon -k
;;
*)
exit 0
;;
esac
g15daemon for Debian
--------------------
<possible notes regarding this package - if none, delete this file>
-- Anthony J. Mirabella <mirabeaj@gmail.com>, Thu, 28 Sep 2006 04:46:06 -0400
This diff is collapsed.
This diff is collapsed.
This package was debianized by Anthony J. Mirabella <mirabeaj@gmail.com> on
Thu, 28 Sep 2006 04:46:06 -0400.
It was downloaded from <fill in ftp site>
Copyright Holder: <put author(s) name and email here>
License:
<Put the license of the package here>
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment