Adding bindings
authorMarkus Ullmann <jokey@gentoo.org>
Tue, 10 Oct 2006 14:57:36 +0000 (14:57 +0000)
committerMarkus Ullmann <jokey@gentoo.org>
Tue, 10 Oct 2006 14:57:36 +0000 (14:57 +0000)
Package-Manager: portage-2.1.2_pre2-r7

app-misc/g15daemon/ChangeLog
app-misc/g15daemon/files/digest-g15daemon-1.2.1-r1 [new file with mode: 0644]
app-misc/g15daemon/files/g15daemon-1.2.1.rc
app-misc/g15daemon/g15daemon-1.2.1-r1.ebuild [new file with mode: 0644]

index 479977cb8613812e17105ea892c3700d75e7d37d..985d579fa294627515de32fb45490397fce0a72b 100644 (file)
@@ -1,6 +1,12 @@
 # ChangeLog for app-misc/g15daemon
 # Copyright 1999-2006 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/app-misc/g15daemon/ChangeLog,v 1.1 2006/10/04 18:50:38 jokey Exp $
+# $Header: /var/cvsroot/gentoo-x86/app-misc/g15daemon/ChangeLog,v 1.2 2006/10/10 14:57:36 jokey Exp $
+
+*g15daemon-1.2.1-r1 (10 Oct 2006)
+
+  10 Oct 2006; Markus Ullmann <jokey@gentoo.org> files/g15daemon-1.2.1.rc,
+  -g15daemon-1.2.1.ebuild, +g15daemon-1.2.1-r1.ebuild:
+  Adding bindings
 
 *g15daemon-1.2.1 (04 Oct 2006)
 
diff --git a/app-misc/g15daemon/files/digest-g15daemon-1.2.1-r1 b/app-misc/g15daemon/files/digest-g15daemon-1.2.1-r1
new file mode 100644 (file)
index 0000000..d9d2f2d
--- /dev/null
@@ -0,0 +1,3 @@
+MD5 4df6f47457fa054f37e7e44a9c7c36c4 g15daemon-1.2.1.tar.bz2 267042
+RMD160 0b94f4541603448efbf6b4bdbb1bcadc254a614e g15daemon-1.2.1.tar.bz2 267042
+SHA256 207efaa4180e3ab6069213f042e149650cd9af54e4976fc0d36b48f6192fa8e9 g15daemon-1.2.1.tar.bz2 267042
index 39a7f1d4390463273466e3c2f32960164cc64a16..71912cc21838dcfe8510dffe2e6a27db0a9dfcd6 100644 (file)
@@ -1,7 +1,7 @@
 #!/sbin/runscript
 # Copyright 1999-2006 Gentoo Foundation
 # Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/app-misc/g15daemon/files/g15daemon-1.2.1.rc,v 1.1 2006/10/04 18:50:38 jokey Exp $
+# $Header: /var/cvsroot/gentoo-x86/app-misc/g15daemon/files/g15daemon-1.2.1.rc,v 1.2 2006/10/10 14:57:36 jokey Exp $
 
 # Init script for g15daemon
 
@@ -12,9 +12,8 @@ depend() {
 
 start() {
        ebegin "Starting g15daemon"
-       start-stop-daemon --start --background --pidfile /var/run/g15daemon.pid --exec /usr/sbin/g15daemon \
-               || ( eerror "Failed to start g15daemon." && return 1 )
-       eend $?
+       start-stop-daemon --start --background --pidfile /var/run/g15daemon.pid --exec /usr/sbin/g15daemon
+       eend $? "Failed to start g15daemon."
 }
 
 stop() {
diff --git a/app-misc/g15daemon/g15daemon-1.2.1-r1.ebuild b/app-misc/g15daemon/g15daemon-1.2.1-r1.ebuild
new file mode 100644 (file)
index 0000000..17582de
--- /dev/null
@@ -0,0 +1,144 @@
+# Copyright 1999-2006 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/app-misc/g15daemon/g15daemon-1.2.1-r1.ebuild,v 1.1 2006/10/10 14:57:36 jokey Exp $
+
+inherit eutils linux-info perl-module python
+
+DESCRIPTION="G15daemon takes control of the G15 keyboard, through the linux kernel uinput device driver"
+HOMEPAGE="http://g15daemon.sourceforge.net/"
+SRC_URI="mirror://sourceforge/g15daemon/${P}.tar.bz2"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE="perl python xmms"
+
+DEPEND="dev-libs/libusb
+       dev-libs/libdaemon
+       dev-libs/libg15
+       perl? ( >=dev-perl/Inline-0.4 )
+       python? ( dev-lang/python )
+       xmms? ( media-sound/xmms )"
+RDEPEND="${DEPEND}
+       perl? ( dev-perl/GDGraph )"
+
+uinput_check() {
+       ebegin "Checking for uinput support"
+       linux_chkconfig_present INPUT_UINPUT
+       eend $?
+
+       if [[ $? -ne 0 ]] ; then
+               eerror "To use g15daemon, you need to compile your kernel with uinput support."
+               eerror "Please enable uinput support in your kernel config, found at:"
+               eerror
+               eerror "Device Drivers -> Input Device ... -> Miscellaneous devices -> User level driver support."
+               eerror
+               eerror "Once enabled, you should have the /dev/input/uinput device."
+               eerror "g15daemon will not work without the uinput device."
+               die "INPUT_UINPUT support not detected!"
+       fi
+}
+
+pkg_setup() {
+       linux-info_pkg_setup
+       uinput_check
+}
+
+src_unpack() {
+       unpack ${A}
+       if use perl; then
+               unpack "./${P}/lang-bindings/perl-G15Daemon-0.2.tar.gz"
+       fi
+       if use python; then
+               unpack "./${P}/lang-bindings/pyg15daemon-0.0.tar.bz2"
+       fi
+       cd "${S}"
+
+       if use xmms; then
+               sed -i "6s:-O2:${CFLAGS} -fPIC -I../libg15daemon_client -L../libg15daemon_client/.libs:" g15daemon_xmms/Makefile
+       fi
+}
+
+src_compile() {
+       econf || die "configure failed"
+
+       emake || die "make failed"
+
+       if use xmms; then
+               einfo "Compiling libg15daemon_xmms_spectrum"
+               cd "${S}/g15daemon_xmms"
+               emake || die "making xmms plugin failed"
+       fi
+
+       if use perl; then
+               cd "${WORKDIR}/G15Daemon-0.2"
+               perl-module_src_compile
+       fi
+}
+
+src_install() {
+       emake DESTDIR="${D}" install || die "make install failed"
+
+       dodoc AUTHORS NEWS README TODO ChangeLog
+
+       insinto /usr/share/g15daemon/contrib
+       doins contrib/xmodmaprc
+       doins contrib/xmodmap.sh
+       if use perl; then
+               doins contrib/testbindings.pl
+       fi
+
+       newinitd "${FILESDIR}/g15daemon-${PV}.rc" g15daemon
+
+       if use xmms; then
+               VISPLUGINDIR=`/usr/bin/xmms-config --visualization-plugin-dir`
+               einfo "Installing libg15daemon_xmms_spectrum plugin into ${VISPLUGINDIR}"
+
+               cd "${S}/g15daemon_xmms"
+               exeinto "${VISPLUGINDIR}"
+               doexe libg15daemon_xmms_spectrum.so
+       fi
+
+       if use perl; then
+               einfo "Installing Perl Bindings (G15Daemon.pm)"
+               cd "${WORKDIR}/G15Daemon-0.2"
+               perl-module_src_install
+       fi
+
+       if use python; then
+               einfo "Installing Python Bindings (g15daemon.py)"
+               cd "${WORKDIR}/pyg15daemon"
+               python_version
+
+               insinto /usr/$(get_libdir)/python${PYVER}/site-packages/g15daemon
+               doins g15daemon.py
+               newdoc AUTHORS pyg15daemon_AUTHORS
+       fi
+}
+
+pkg_postinst() {
+       if use python; then
+               python_mod_optimize "${ROOT}/usr/lib/python*/site-packages/g15daemon"
+               einfo ""
+       fi
+
+       einfo "To use g15daemon, you need to add g15daemon to the default runlevel."
+       einfo "This can be done with:"
+       einfo "# /sbin/rc-update add g15daemon default"
+       einfo ""
+       einfo "To have all new keys working in X11,"
+       einfo "you'll need create a specific xmodmap in your home directory"
+       einfo "or edit the existant one."
+       einfo ""
+       einfo "create the xmodmap:"
+       einfo "cp /usr/share/g15daemon/contrib/xmodmaprc ~/.Xmodmap"
+       einfo ""
+       einfo "adding keycodes to an existing xmodmap:"
+       einfo "cat /usr/share/g15daemon/contrib/xmodmaprc >> ~/.Xmodmap"
+}
+
+pkg_postrm() {
+       if use python; then
+               python_mod_cleanup "${ROOT}/usr/lib/python*/site-packages/g15daemon"
+       fi
+}
\ No newline at end of file