summaryrefslogtreecommitdiff
path: root/testing/gpm
diff options
context:
space:
mode:
Diffstat (limited to 'testing/gpm')
-rw-r--r--testing/gpm/PKGBUILD41
-rwxr-xr-xtesting/gpm/gpm41
-rw-r--r--testing/gpm/gpm.conf.d4
-rw-r--r--testing/gpm/gpm.install16
-rw-r--r--testing/gpm/gpm.service9
-rwxr-xr-xtesting/gpm/gpm.sh3
6 files changed, 114 insertions, 0 deletions
diff --git a/testing/gpm/PKGBUILD b/testing/gpm/PKGBUILD
new file mode 100644
index 000000000..3293e1ccc
--- /dev/null
+++ b/testing/gpm/PKGBUILD
@@ -0,0 +1,41 @@
+# $Id: PKGBUILD 163459 2012-07-12 01:32:54Z eric $
+# Maintainer: Eric BĂ©langer <eric@archlinux.org>
+
+pkgname=gpm
+pkgver=1.20.6
+pkgrel=10
+pkgdesc="A mouse server for the console and xterm"
+arch=('i686' 'x86_64')
+url="http://www.nico.schottelius.org/software/gpm/"
+license=('GPL')
+depends=('ncurses' 'bash')
+backup=('etc/conf.d/gpm')
+options=('!makeflags')
+install=gpm.install
+source=(http://www.nico.schottelius.org/software/gpm/archives/${pkgname}-${pkgver}.tar.lzma \
+ gpm gpm.conf.d gpm.sh gpm.service)
+sha1sums=('4677da0eb2f1910a5a744bbefa08fea82e0dca0c'
+ '19e1feb1493373512a77801699df012d186336ea'
+ '4c31cb7dd51cee4d16d3f7a8956e6d87fac1ad86'
+ '88fe5ff10916c68a87abc8418a56eb0073f69fa9'
+ '20b92360f0ad38a2032fcae37bdbd01b31e43f77')
+
+build() {
+ cd "${srcdir}/${pkgname}-${pkgver}"
+ ./configure --prefix=/usr --sysconfdir=/etc
+ make
+}
+
+package() {
+ cd "${srcdir}/${pkgname}-${pkgver}"
+ make DESTDIR="${pkgdir}" install
+ install -D -m755 ../gpm "${pkgdir}/etc/rc.d/gpm"
+ install -D -m644 ../gpm.conf.d "${pkgdir}/etc/conf.d/gpm"
+ install -D -m755 ../gpm.sh "${pkgdir}/etc/profile.d/gpm.sh"
+ install -D -m644 ../gpm.service "${pkgdir}/usr/lib/systemd/system/gpm.service"
+
+# library fixes
+ cd "${pkgdir}/usr/lib/"
+ ln -s libgpm.so.2.* libgpm.so
+ chmod 755 "${pkgdir}"/usr/lib/libgpm.so.*
+}
diff --git a/testing/gpm/gpm b/testing/gpm/gpm
new file mode 100755
index 000000000..7b5213dd7
--- /dev/null
+++ b/testing/gpm/gpm
@@ -0,0 +1,41 @@
+#!/bin/bash
+
+# source application-specific settings
+GPM_ARGS=
+[ -f /etc/conf.d/gpm ] && . /etc/conf.d/gpm
+
+. /etc/rc.conf
+. /etc/rc.d/functions
+
+PID=$(pidof -o %PPID /usr/sbin/gpm)
+case "$1" in
+ start)
+ stat_busy "Starting GPM Daemon"
+ [ -z "$PID" ] && /usr/sbin/gpm ${GPM_ARGS}
+ PID=$(pidof -o %PPID /usr/sbin/gpm)
+ if [ -z "$PID" ]; then
+ stat_fail
+ else
+ add_daemon gpm
+ stat_done
+ fi
+ ;;
+ stop)
+ stat_busy "Stopping GPM Daemon"
+ [ ! -z "$PID" ] && kill $PID &> /dev/null
+ if [ $? -gt 0 ]; then
+ stat_fail
+ else
+ rm_daemon gpm
+ stat_done
+ fi
+ ;;
+ restart)
+ $0 stop
+ sleep 1
+ $0 start
+ ;;
+ *)
+ echo "usage: $0 {start|stop|restart}"
+esac
+exit 0
diff --git a/testing/gpm/gpm.conf.d b/testing/gpm/gpm.conf.d
new file mode 100644
index 000000000..ab43bb7eb
--- /dev/null
+++ b/testing/gpm/gpm.conf.d
@@ -0,0 +1,4 @@
+#
+# Parameters to be passed to gpm
+#
+GPM_ARGS="-m /dev/input/mice -t imps2"
diff --git a/testing/gpm/gpm.install b/testing/gpm/gpm.install
new file mode 100644
index 000000000..2a1519a6c
--- /dev/null
+++ b/testing/gpm/gpm.install
@@ -0,0 +1,16 @@
+infodir=/usr/share/info
+file=gpm.info.gz
+
+post_install() {
+ [ -x usr/bin/install-info ] || return 0
+ install-info $infodir/$file $infodir/dir 2> /dev/null
+}
+
+post_upgrade() {
+ post_install $1
+}
+
+pre_remove() {
+ [ -x usr/bin/install-info ] || return 0
+ install-info --delete $infodir/$file $infodir/dir 2> /dev/null
+}
diff --git a/testing/gpm/gpm.service b/testing/gpm/gpm.service
new file mode 100644
index 000000000..59e837d80
--- /dev/null
+++ b/testing/gpm/gpm.service
@@ -0,0 +1,9 @@
+[Unit]
+Description=Virtual console mouse server
+
+[Service]
+Type=forking
+ExecStart=/usr/sbin/gpm -m /dev/input/mice -t imps2
+
+[Install]
+WantedBy=multi-user.target
diff --git a/testing/gpm/gpm.sh b/testing/gpm/gpm.sh
new file mode 100755
index 000000000..af35a5f33
--- /dev/null
+++ b/testing/gpm/gpm.sh
@@ -0,0 +1,3 @@
+case $( /usr/bin/tty ) in
+ /dev/tty[0-9]*) [ -n "$(pgrep gpm)" ] && /usr/bin/disable-paste ;;
+esac