update to 1.20.7 [release 1.20.7-1mamba;Fri Dec 21 2012]
This commit is contained in:
parent
5884b27a05
commit
abbcf7ede5
@ -1,2 +1,5 @@
|
|||||||
# gpm
|
# gpm
|
||||||
|
|
||||||
|
Gpm provides mouse support to text-based Linux applications like the emacs editor, the Midnight Commander file management system, and other programs.
|
||||||
|
Gpm also provides console cut-and-paste operations using the mouse and includes a program to allow pop-up menus to appear at the click of a mouse button.
|
||||||
|
|
||||||
|
29
gpm-1.20.1-aligned-sleep.patch
Normal file
29
gpm-1.20.1-aligned-sleep.patch
Normal file
@ -0,0 +1,29 @@
|
|||||||
|
--- gpm-1.20.1/src/console.c.org 2006-09-03 10:11:17.000000000 +0200
|
||||||
|
+++ gpm-1.20.1/src/console.c 2006-09-03 10:14:34.000000000 +0200
|
||||||
|
@@ -30,6 +30,7 @@
|
||||||
|
#include <time.h> /* time() */
|
||||||
|
#include <sys/fcntl.h> /* O_RDONLY */
|
||||||
|
#include <sys/stat.h> /* mkdir() */
|
||||||
|
+#include <sys/time.h>
|
||||||
|
#include <asm/types.h> /* __u32 */
|
||||||
|
|
||||||
|
#include <linux/vt.h> /* VT_GETSTATE */
|
||||||
|
@@ -102,8 +103,17 @@ int is_text_console(void)
|
||||||
|
/*-------------------------------------------------------------------*/
|
||||||
|
void wait_text_console(void)
|
||||||
|
{
|
||||||
|
+ struct timeval now;
|
||||||
|
+ int usecs;
|
||||||
|
do {
|
||||||
|
- sleep(2);
|
||||||
|
+ /* sleep to the top of the seconds about 2 seconds from now */
|
||||||
|
+ gettimeofday(&now, NULL);
|
||||||
|
+ usecs = 2000000;
|
||||||
|
+ if (now.tv_usec <= 250000)
|
||||||
|
+ usecs -= 1000000;
|
||||||
|
+ usecs += 1000000 - now.tv_usec;
|
||||||
|
+
|
||||||
|
+ usleep(usecs);
|
||||||
|
} while (!is_text_console());
|
||||||
|
}
|
||||||
|
|
14
gpm-1.20.1-close-fds.patch
Normal file
14
gpm-1.20.1-close-fds.patch
Normal file
@ -0,0 +1,14 @@
|
|||||||
|
--- gpm-1.20.1/src/startup.c.close-fds 2006-09-22 13:46:19.000000000 +0200
|
||||||
|
+++ gpm-1.20.1/src/startup.c 2006-09-22 13:46:44.000000000 +0200
|
||||||
|
@@ -97,6 +97,11 @@
|
||||||
|
/* is changing to root needed, because of relative paths ? or can we just
|
||||||
|
* remove and ignore it ?? FIXME */
|
||||||
|
if (chdir("/") < 0) gpm_report(GPM_PR_OOPS,GPM_MESS_CHDIR_FAILED);
|
||||||
|
+
|
||||||
|
+ // close extra fds
|
||||||
|
+ close(0);
|
||||||
|
+ close(1);
|
||||||
|
+ close(2);
|
||||||
|
|
||||||
|
atexit(gpm_exited); /* call gpm_exited at the end */
|
||||||
|
}
|
18
gpm-1.20.1-consolename.patch
Normal file
18
gpm-1.20.1-consolename.patch
Normal file
@ -0,0 +1,18 @@
|
|||||||
|
--- gpm-1.20.1/src/lib/liblow.c.orig 2004-10-13 16:34:15.181502369 -0400
|
||||||
|
+++ gpm-1.20.1/src/lib/liblow.c 2004-10-13 16:34:20.491778415 -0400
|
||||||
|
@@ -262,13 +262,14 @@
|
||||||
|
gpm_report(GPM_PR_ERR,"consolename not set");
|
||||||
|
goto err;
|
||||||
|
}
|
||||||
|
+#if 0
|
||||||
|
/* do we really need this check ? */
|
||||||
|
if(strncmp(tty,consolename,strlen(consolename)-1)
|
||||||
|
|| !isdigit(tty[strlen(consolename)-1])) {
|
||||||
|
gpm_report(GPM_PR_ERR,"strncmp/isdigit/consolename failed");
|
||||||
|
goto err;
|
||||||
|
}
|
||||||
|
-
|
||||||
|
+#endif
|
||||||
|
conn->vc=atoi(&tty[strlen(consolename)-1]);
|
||||||
|
}
|
||||||
|
|
17
gpm-1.20.1-deadsocket.patch
Normal file
17
gpm-1.20.1-deadsocket.patch
Normal file
@ -0,0 +1,17 @@
|
|||||||
|
--- gpm-1.20.1/src/gpm.c.deadsocket 2007-03-23 16:59:42.000000000 +0100
|
||||||
|
+++ gpm-1.20.1/src/gpm.c 2007-03-23 17:10:10.000000000 +0100
|
||||||
|
@@ -544,7 +544,14 @@
|
||||||
|
* we can safely use micelist
|
||||||
|
*/
|
||||||
|
close(micelist->dev.fd);
|
||||||
|
+
|
||||||
|
+ close(ctlfd);
|
||||||
|
+ FD_CLR(ctlfd, &connSet);
|
||||||
|
wait_text_console();
|
||||||
|
+ ctlfd = listen_for_clients();
|
||||||
|
+ FD_SET(ctlfd, &connSet);
|
||||||
|
+ maxfd = max(maxfd, ctlfd);
|
||||||
|
+
|
||||||
|
/* reopen, reinit (the function is only used if we have one mouse device) */
|
||||||
|
if ((micelist->dev.fd = open(micelist->device, O_RDWR)) < 0)
|
||||||
|
gpm_report(GPM_PR_OOPS, GPM_MESS_OPEN, micelist->device);
|
7023
gpm-1.20.1-evdev-cumulative.patch
Normal file
7023
gpm-1.20.1-evdev-cumulative.patch
Normal file
File diff suppressed because it is too large
Load Diff
16
gpm-1.20.1-input.patch
Normal file
16
gpm-1.20.1-input.patch
Normal file
@ -0,0 +1,16 @@
|
|||||||
|
diff -ur gpm-1.20.1.orig/src/headers/config.h.in gpm-1.20.1/src/headers/config.h.in
|
||||||
|
--- gpm-1.20.1.orig/src/headers/config.h.in 2004-09-04 10:24:11.000000000 -0400
|
||||||
|
+++ gpm-1.20.1/src/headers/config.h.in 2004-09-04 10:26:02.000000000 -0400
|
||||||
|
@@ -46,6 +46,12 @@
|
||||||
|
/* Define if you have the <linux/input.h> header file. */
|
||||||
|
#undef HAVE_LINUX_INPUT_H
|
||||||
|
|
||||||
|
+/* Definedif you have the input_id structure */
|
||||||
|
+#undef HAVE_INPUT_ID
|
||||||
|
+
|
||||||
|
+/* Definedif you have the input_absinfo structure */
|
||||||
|
+#undef HAVE_INPUT_ABSINFO
|
||||||
|
+
|
||||||
|
/* Define if you have the <linux/joystick.h> header file. */
|
||||||
|
#undef HAVE_LINUX_JOYSTICK_H
|
||||||
|
|
11
gpm-1.20.1-math.patch
Normal file
11
gpm-1.20.1-math.patch
Normal file
@ -0,0 +1,11 @@
|
|||||||
|
--- gpm-1.20.1/configure.in.math Tue Jun 24 10:52:44 2003
|
||||||
|
+++ gpm-1.20.1/configure.in Tue Jun 24 10:53:54 2003
|
||||||
|
@@ -128,7 +128,7 @@
|
||||||
|
AC_SUBST(lispdir)
|
||||||
|
|
||||||
|
CPPFLAGS='-I$(srcdir) $(DEFS) -include headers/config.h -Wall -DSYSCONFDIR="\"$(sysconfdir)\"" -DSBINDIR="\"$(sbindir)\""'
|
||||||
|
-LDFLAGS='-L$(srcdir)'
|
||||||
|
+LDFLAGS='-lm -L$(srcdir)'
|
||||||
|
|
||||||
|
dnl AC_DEFINE_UNQUOTED(SYSCONFDIR,"$sysconfdir")
|
||||||
|
dnl AC_DEFINE_UNQUOTED(SBINDIR,"$sbindir")
|
21
gpm-1.20.1-nolibmessages.patch
Normal file
21
gpm-1.20.1-nolibmessages.patch
Normal file
@ -0,0 +1,21 @@
|
|||||||
|
diff -ru gpm-1.20.1.orig/src/lib/report-lib.c gpm-1.20.1/src/lib/report-lib.c
|
||||||
|
--- gpm-1.20.1.orig/src/lib/report-lib.c 2005-02-01 15:16:51.000000000 +0100
|
||||||
|
+++ gpm-1.20.1/src/lib/report-lib.c 2005-02-01 15:41:32.000000000 +0100
|
||||||
|
@@ -37,9 +37,12 @@
|
||||||
|
case GPM_STAT_DEBUG: string = GPM_TEXT_DEBUG; break;
|
||||||
|
case GPM_STAT_OOPS : string = GPM_TEXT_OOPS; break;
|
||||||
|
}
|
||||||
|
- fprintf(stderr,"%s[%s(%d)]:\n",string,file,line);
|
||||||
|
- vfprintf(stderr,text,ap);
|
||||||
|
- fprintf(stderr,"\n");
|
||||||
|
-
|
||||||
|
- if(stat == GPM_STAT_OOPS) exit(1); /* may a lib function call exit ???? */
|
||||||
|
+
|
||||||
|
+ // Patch: print to stderr only OOPS
|
||||||
|
+ if(stat == GPM_STAT_OOPS) {
|
||||||
|
+ fprintf(stderr,"%s[%s(%d)]:\n",string,file,line);
|
||||||
|
+ vfprintf(stderr,text,ap);
|
||||||
|
+ fprintf(stderr,"\n");
|
||||||
|
+ exit(1); /* may a lib function call exit ???? */
|
||||||
|
+ }
|
||||||
|
}
|
138
gpm-1.20.1-nomessages.patch
Normal file
138
gpm-1.20.1-nomessages.patch
Normal file
@ -0,0 +1,138 @@
|
|||||||
|
diff -Nru gpm-1.20.1.orig/src/report.c gpm-1.20.1/src/report.c
|
||||||
|
--- gpm-1.20.1.orig/src/report.c 2005-02-01 15:16:51.000000000 +0100
|
||||||
|
+++ gpm-1.20.1/src/report.c 2005-02-01 15:34:00.000000000 +0100
|
||||||
|
@@ -70,7 +70,6 @@
|
||||||
|
|
||||||
|
void gpm_report(int line, char *file, int stat, char *text, ... )
|
||||||
|
{
|
||||||
|
- FILE *console = NULL;
|
||||||
|
va_list ap;
|
||||||
|
|
||||||
|
va_start(ap,text);
|
||||||
|
@@ -80,23 +79,9 @@
|
||||||
|
case GPM_RUN_STARTUP:
|
||||||
|
switch(stat) {
|
||||||
|
case GPM_STAT_INFO:
|
||||||
|
-#ifdef HAVE_VSYSLOG
|
||||||
|
- syslog(LOG_INFO | LOG_USER, GPM_STRING_INFO);
|
||||||
|
- vsyslog(LOG_INFO | LOG_USER, text, ap);
|
||||||
|
-#endif
|
||||||
|
- fprintf(stderr,GPM_STRING_INFO);
|
||||||
|
- vfprintf(stderr,text,ap);
|
||||||
|
- fprintf(stderr,"\n");
|
||||||
|
break;
|
||||||
|
|
||||||
|
case GPM_STAT_WARN:
|
||||||
|
-#ifdef HAVE_VSYSLOG
|
||||||
|
- syslog(LOG_DAEMON | LOG_WARNING, GPM_STRING_WARN);
|
||||||
|
- vsyslog(LOG_DAEMON | LOG_WARNING, text, ap);
|
||||||
|
-#endif
|
||||||
|
- fprintf(stderr,GPM_STRING_WARN);
|
||||||
|
- vfprintf(stderr,text,ap);
|
||||||
|
- fprintf(stderr,"\n");
|
||||||
|
break;
|
||||||
|
|
||||||
|
case GPM_STAT_ERR:
|
||||||
|
@@ -104,9 +89,6 @@
|
||||||
|
syslog(LOG_DAEMON | LOG_ERR, GPM_STRING_ERR);
|
||||||
|
vsyslog(LOG_DAEMON | LOG_ERR, text, ap);
|
||||||
|
#endif
|
||||||
|
- fprintf(stderr,GPM_STRING_ERR);
|
||||||
|
- vfprintf(stderr,text,ap);
|
||||||
|
- fprintf(stderr,"\n");
|
||||||
|
break;
|
||||||
|
|
||||||
|
case GPM_STAT_OOPS:
|
||||||
|
@@ -114,10 +96,6 @@
|
||||||
|
syslog(LOG_DAEMON | LOG_ERR, GPM_STRING_OOPS);
|
||||||
|
vsyslog(LOG_DAEMON | LOG_ERR, text, ap);
|
||||||
|
#endif
|
||||||
|
- fprintf(stderr,GPM_STRING_OOPS);
|
||||||
|
- vfprintf(stderr,text,ap);
|
||||||
|
- fprintf(stderr,"\n");
|
||||||
|
-
|
||||||
|
exit(1); /* we should have a oops()-function,but this works,too*/
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
@@ -127,23 +105,9 @@
|
||||||
|
case GPM_RUN_DAEMON:
|
||||||
|
switch(stat) {
|
||||||
|
case GPM_STAT_INFO:
|
||||||
|
-#ifdef HAVE_VSYSLOG
|
||||||
|
- syslog(LOG_INFO | LOG_USER, GPM_STRING_INFO);
|
||||||
|
- vsyslog(LOG_INFO | LOG_USER, text, ap);
|
||||||
|
-#endif
|
||||||
|
break;
|
||||||
|
|
||||||
|
case GPM_STAT_WARN:
|
||||||
|
-#ifdef HAVE_VSYSLOG
|
||||||
|
- syslog(LOG_DAEMON | LOG_WARNING, GPM_STRING_WARN);
|
||||||
|
- vsyslog(LOG_DAEMON | LOG_WARNING, text, ap);
|
||||||
|
-#endif
|
||||||
|
- if((console = fopen(GPM_SYS_CONSOLE,"a")) != NULL) {
|
||||||
|
- fprintf(console,GPM_STRING_WARN);
|
||||||
|
- vfprintf(console,text,ap);
|
||||||
|
- fprintf(console,"\n");
|
||||||
|
- fclose(console);
|
||||||
|
- }
|
||||||
|
break;
|
||||||
|
|
||||||
|
case GPM_STAT_ERR:
|
||||||
|
@@ -151,19 +115,6 @@
|
||||||
|
syslog(LOG_DAEMON | LOG_ERR, GPM_STRING_ERR);
|
||||||
|
vsyslog(LOG_DAEMON | LOG_ERR, text, ap);
|
||||||
|
#endif
|
||||||
|
- if((console = fopen(GPM_SYS_CONSOLE,"a")) != NULL) {
|
||||||
|
- fprintf(console,GPM_STRING_ERR);
|
||||||
|
- vfprintf(console,text,ap);
|
||||||
|
- fprintf(console,"\n");
|
||||||
|
- fclose(console);
|
||||||
|
- }
|
||||||
|
-
|
||||||
|
- if((console = fopen(option.consolename,"a")) != NULL) {
|
||||||
|
- fprintf(console,GPM_STRING_ERR);
|
||||||
|
- vfprintf(console,text,ap);
|
||||||
|
- fprintf(console,"\n");
|
||||||
|
- fclose(console);
|
||||||
|
- }
|
||||||
|
break;
|
||||||
|
|
||||||
|
case GPM_STAT_OOPS:
|
||||||
|
@@ -171,37 +122,10 @@
|
||||||
|
syslog(LOG_DAEMON | LOG_ERR, GPM_STRING_OOPS);
|
||||||
|
vsyslog(LOG_DAEMON | LOG_ERR, text, ap);
|
||||||
|
#endif
|
||||||
|
- fprintf(stderr,GPM_STRING_OOPS);
|
||||||
|
- vfprintf(stderr,text,ap);
|
||||||
|
- fprintf(stderr,"\n");
|
||||||
|
-
|
||||||
|
_exit(1); /* we are the fork()-child */
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
break; /* running gpm */
|
||||||
|
-
|
||||||
|
- /******************** DEBUGGING and CLIENT *****************/
|
||||||
|
- case GPM_RUN_DEBUG:
|
||||||
|
- switch(stat) {
|
||||||
|
- case GPM_STAT_INFO:
|
||||||
|
- console = stdout;
|
||||||
|
- fprintf(console,GPM_STRING_INFO); break;
|
||||||
|
- case GPM_STAT_WARN:
|
||||||
|
- console = stderr;
|
||||||
|
- fprintf(console,GPM_STRING_WARN); break;
|
||||||
|
- case GPM_STAT_ERR:
|
||||||
|
- console = stderr;
|
||||||
|
- fprintf(console,GPM_STRING_ERR); break;
|
||||||
|
- case GPM_STAT_DEBUG:
|
||||||
|
- console = stderr;
|
||||||
|
- fprintf(console,GPM_STRING_DEBUG); break;
|
||||||
|
- case GPM_STAT_OOPS:
|
||||||
|
- console = stderr;
|
||||||
|
- fprintf(console,GPM_STRING_OOPS); break;
|
||||||
|
- }
|
||||||
|
-
|
||||||
|
- vfprintf(console,text,ap);
|
||||||
|
- fprintf(console,"\n");
|
||||||
|
|
||||||
|
if(stat == GPM_STAT_OOPS) exit(1);
|
||||||
|
|
11
gpm-1.20.1-subscript.patch
Normal file
11
gpm-1.20.1-subscript.patch
Normal file
@ -0,0 +1,11 @@
|
|||||||
|
--- gpm-1.20.1/src/mice.c.lr 2004-02-15 09:19:48.000000000 +0100
|
||||||
|
+++ gpm-1.20.1/src/mice.c 2004-02-15 09:22:18.000000000 +0100
|
||||||
|
@@ -2112,7 +2112,7 @@
|
||||||
|
for (i=0; i<4; i++)
|
||||||
|
if (gunze_calib[i] & ~1023) calibok = 0;
|
||||||
|
if (gunze_calib[0] == gunze_calib[2]) calibok = 0;
|
||||||
|
- if (gunze_calib[1] == gunze_calib[4]) calibok = 0;
|
||||||
|
+ if (gunze_calib[1] == gunze_calib[3]) calibok = 0;
|
||||||
|
fclose(f);
|
||||||
|
}
|
||||||
|
if (!calibok) {
|
102
gpm-initscript
Normal file
102
gpm-initscript
Normal file
@ -0,0 +1,102 @@
|
|||||||
|
#!/bin/bash
|
||||||
|
#
|
||||||
|
# gpm -- GPM adds mouse support to text-based Linux applications
|
||||||
|
#
|
||||||
|
# chkconfig: 345 98 1
|
||||||
|
# description: GPM adds mouse support to text-based Linux applications such \
|
||||||
|
# the Midnight Commander. Is also allows mouse-based console \
|
||||||
|
# cut-and-paste operations, and includes support for pop-up \
|
||||||
|
# menus on the console.
|
||||||
|
# processname: gpm
|
||||||
|
# pidfile: /var/run/gpm.pid
|
||||||
|
# config: /etc/sysconfig/mouse
|
||||||
|
|
||||||
|
# Copyright (c) 2003-2005 by Silvan Calarco <silvan.calarco@qilinux.it>
|
||||||
|
# Copyright (c) 2003-2007 by Davide Madrisan <davide.madrisan@qilinux.it>
|
||||||
|
|
||||||
|
. /etc/sysconfig/rc
|
||||||
|
. $rc_functions
|
||||||
|
|
||||||
|
NAME=gpm
|
||||||
|
DAEMON=/usr/sbin/$NAME
|
||||||
|
DAEMONPID=/var/run/$NAME.pid
|
||||||
|
DAEMONCONF=/etc/gpm-root.conf
|
||||||
|
OPTIONS=-R
|
||||||
|
#MOUSECFG=/etc/sysconfig/mouse
|
||||||
|
#MOUSEDEVICE=/dev/mouse
|
||||||
|
|
||||||
|
[ -x $DAEMON ] || exit 0
|
||||||
|
|
||||||
|
[ -r /etc/sysconfig/$NAME ] && . /etc/sysconfig/$NAME
|
||||||
|
|
||||||
|
KERNELMIN=`uname -r | sed -e 's,[^\.]*\.,,' -e 's,\..*,,'`
|
||||||
|
RETVAL=0
|
||||||
|
|
||||||
|
case "$1" in
|
||||||
|
start)
|
||||||
|
echo -n $"Starting console mouse services: "
|
||||||
|
unset GPM_PARMS
|
||||||
|
SYNAPTIC_DEV=`cat /proc/bus/input/devices 2>/dev/null | \
|
||||||
|
sed '/./{H;$!d;};x;/Synaptics/!d' | \
|
||||||
|
sed -n '/Handlers=/{s,.*\(event[^ ]*\).*,\1,p}'`
|
||||||
|
[ "$SYNAPTIC_DEV" ] &&
|
||||||
|
GPM_PARMS="-m /dev/input/$SYNAPTIC_DEV -t evdev"
|
||||||
|
|
||||||
|
USB_DEV=`cat /proc/bus/input/devices 2>/dev/null | \
|
||||||
|
sed '/./{H;$!d;};x;/Phys=usb/!d' | \
|
||||||
|
sed -n '/Handlers=/{s,.*\(mouse[^ ]*\).*,\1,p}'`
|
||||||
|
[ "$USB_DEV" ] &&
|
||||||
|
for usbdev in $USB_DEV; do
|
||||||
|
GPM_PARMS="${GPM_PARMS:+"$GPM_PARMS -M"} -m /dev/input/$usbdev -t imps2"
|
||||||
|
done
|
||||||
|
|
||||||
|
PS2_DEV=`cat /proc/bus/input/devices 2>/dev/null | \
|
||||||
|
sed '/./{H;$!d;};x;/Name="PS\/2/!d' | \
|
||||||
|
sed -n '/Handlers=/{s,.*\(mouse[^ ]*\).*,\1,p}'`
|
||||||
|
[ "$PS2_DEV" ] &&
|
||||||
|
GPM_PARMS="${GPM_PARMS:+"$GPM_PARMS -M"} -m /dev/input/$PS2_DEV -t ps2"
|
||||||
|
|
||||||
|
IMPS2_DEV=`cat /proc/bus/input/devices 2>/dev/null | \
|
||||||
|
sed '/./{H;$!d;};x;/Name="Im[^ ]*PS\/2/!d' | \
|
||||||
|
sed -n '/Handlers=/{s,.*\(mouse[^ ]*\).*,\1,p}'`
|
||||||
|
[ "$IMPS2_DEV" ] &&
|
||||||
|
GPM_PARMS="${GPM_PARMS:+"$GPM_PARMS -M"} -m /dev/input/$IMPS2_DEV -t imps2"
|
||||||
|
|
||||||
|
if [ "$KERNELMIN" -le 4 ]; then
|
||||||
|
[ -z "$PS2_DEV" -a -e /dev/psaux ] &&
|
||||||
|
GPM_PARMS="${GPM_PARMS:+"$GPM_PARMS -M"} -m /dev/psaux -t ps2"
|
||||||
|
|
||||||
|
[ "$USB_DEV" ] ||
|
||||||
|
for usbdev in `find /dev/input/mouse[0-9] 2>/dev/null`; do
|
||||||
|
GPM_PARMS="${GPM_PARMS:+"$GPM_PARMS -M"} -m $usbdev -t imps2"
|
||||||
|
done
|
||||||
|
fi
|
||||||
|
|
||||||
|
daemon --pidfile=$DAEMONPID $DAEMON $OPTIONS $GPM_PARMS
|
||||||
|
RETVAL=$?
|
||||||
|
evaluate_retval; echo
|
||||||
|
[ $RETVAL -eq 0 ] && touch /var/lock/subsys/$NAME
|
||||||
|
;;
|
||||||
|
stop)
|
||||||
|
echo -n $"Shutting down console mouse services: "
|
||||||
|
killproc -p $DAEMONPID $DAEMON
|
||||||
|
RETVAL=$?
|
||||||
|
evaluate_retval; echo
|
||||||
|
[ $RETVAL -eq 0 ] && rm -f /var/lock/subsys/$NAME
|
||||||
|
;;
|
||||||
|
restart|reload)
|
||||||
|
$0 stop
|
||||||
|
$0 start
|
||||||
|
;;
|
||||||
|
condrestart)
|
||||||
|
[ -e /var/lock/subsys/$NAME ] && $0 restart || :
|
||||||
|
;;
|
||||||
|
status)
|
||||||
|
statusproc $DAEMON
|
||||||
|
;;
|
||||||
|
*) echo $"Usage:"" $0 {start|stop|status|restart}"
|
||||||
|
exit 1
|
||||||
|
;;
|
||||||
|
esac
|
||||||
|
|
||||||
|
exit $RETVAL
|
85
gpm-root.conf
Normal file
85
gpm-root.conf
Normal file
@ -0,0 +1,85 @@
|
|||||||
|
# sample configuration file for gpm-root
|
||||||
|
# edit it to please your taste....
|
||||||
|
|
||||||
|
button 1 {
|
||||||
|
name "ttys"
|
||||||
|
|
||||||
|
"" f.nop
|
||||||
|
"login on a new tty" f.mktty
|
||||||
|
"" f.nop
|
||||||
|
"tty 1" f.jptty "1"
|
||||||
|
"tty 2" f.jptty "2"
|
||||||
|
"tty 3" f.jptty "3"
|
||||||
|
"tty 4" f.jptty "4"
|
||||||
|
"" f.nop
|
||||||
|
"tty 5" f.jptty "5"
|
||||||
|
"tty 6" f.jptty "6"
|
||||||
|
"tty 7" f.jptty "7"
|
||||||
|
"tty 8" f.jptty "8"
|
||||||
|
"" f.nop
|
||||||
|
"more of them..." {
|
||||||
|
|
||||||
|
"tty 9" f.jptty "9"
|
||||||
|
"tty 10" f.jptty "10"
|
||||||
|
"tty 11" f.jptty "11"
|
||||||
|
"tty 12" f.jptty "12"
|
||||||
|
"" f.nop
|
||||||
|
"tty 13" f.jptty "13"
|
||||||
|
"tty 14" f.jptty "14"
|
||||||
|
"tty 15" f.jptty "15"
|
||||||
|
"tty 16" f.jptty "16"
|
||||||
|
"" f.nop
|
||||||
|
"more of them..." {
|
||||||
|
"tty 17" f.jptty "17"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
button 2 {
|
||||||
|
name "system status"
|
||||||
|
foreground red
|
||||||
|
background black
|
||||||
|
border yellow
|
||||||
|
head bright yellow
|
||||||
|
|
||||||
|
"" f.nop
|
||||||
|
"%b %d %Y" f.time
|
||||||
|
"%H:%M" f.time
|
||||||
|
"" f.nop
|
||||||
|
"load: " f.load
|
||||||
|
"free:" f.free
|
||||||
|
"" f.nop
|
||||||
|
"report disk usage to ~/du" f.bgcmd "du ~ | sort -rn > ~/du"
|
||||||
|
"print mail headers to tty" f.bgcmd
|
||||||
|
"grep '^From ' /var/spool/mail/$USER | tail"
|
||||||
|
}
|
||||||
|
|
||||||
|
button 3 {
|
||||||
|
name "far ttys"
|
||||||
|
|
||||||
|
foreground black
|
||||||
|
background red
|
||||||
|
border bright yellow
|
||||||
|
head bright yellow
|
||||||
|
|
||||||
|
"tty 9" f.jptty "9"
|
||||||
|
"tty 10" f.jptty "10"
|
||||||
|
"tty 11" f.jptty "11"
|
||||||
|
"tty 12" f.jptty "12"
|
||||||
|
"" f.nop
|
||||||
|
|
||||||
|
"tty 13" f.jptty "13"
|
||||||
|
"tty 14" f.jptty "14"
|
||||||
|
"tty 15" f.jptty "15"
|
||||||
|
"tty 16" f.jptty "16"
|
||||||
|
"" f.nop
|
||||||
|
|
||||||
|
# I use this to halt and reboot the system, but it isn't wise to put it
|
||||||
|
# in widely accessible boxes.
|
||||||
|
#
|
||||||
|
# "----" f.nop
|
||||||
|
# "" f.nop
|
||||||
|
# "halt" f.bgcmd "/sbin/shutdown -h now"
|
||||||
|
# "reboot" f.bgcmd "/sbin/shutdown -r now"
|
||||||
|
}
|
227
gpm.spec
Normal file
227
gpm.spec
Normal file
@ -0,0 +1,227 @@
|
|||||||
|
Name: gpm
|
||||||
|
Version: 1.20.7
|
||||||
|
Release: 1mamba
|
||||||
|
Summary: A mouse server for the Linux console
|
||||||
|
Group: System/Servers
|
||||||
|
Vendor: openmamba
|
||||||
|
Distribution: openmamba
|
||||||
|
Packager: Silvan Calarco <silvan.calarco@mambasoft.it>
|
||||||
|
URL: http://www.nico.schottelius.org/software/gpm
|
||||||
|
Source: http://www.nico.schottelius.org/software/gpm/archives/gpm-%{version}.tar.bz2
|
||||||
|
Source1: gpm-initscript
|
||||||
|
Source2: gpm-root.conf
|
||||||
|
Source3: mouse-sysconfig
|
||||||
|
# patch from http://www.geocities.com/dt_or/gpm/patches/
|
||||||
|
Patch1: %{name}-1.20.1-evdev-cumulative.patch
|
||||||
|
Patch2: %{name}-1.20.1-math.patch
|
||||||
|
Patch3: %{name}-1.20.1-subscript.patch
|
||||||
|
Patch4: %{name}-1.20.1-input.patch
|
||||||
|
Patch5: %{name}-1.20.1-consolename.patch
|
||||||
|
Patch6: %{name}-1.20.1-close-fds.patch
|
||||||
|
Patch7: %{name}-1.20.1-aligned-sleep.patch
|
||||||
|
Patch8: %{name}-1.20.1-deadsocket.patch
|
||||||
|
Patch200: %{name}-1.20.1-nomessages.patch
|
||||||
|
Patch201: %{name}-1.20.1-nolibmessages.patch
|
||||||
|
License: GPL
|
||||||
|
## AUTOBUILDREQ-BEGIN
|
||||||
|
BuildRequires: chkconfig
|
||||||
|
BuildRequires: glibc-devel
|
||||||
|
## AUTOBUILDREQ-END
|
||||||
|
%if "%{stage1}" != "1"
|
||||||
|
BuildRequires: emacs-nox >= 21.3
|
||||||
|
BuildRequires: emacs-X11 >= 21.3
|
||||||
|
%endif
|
||||||
|
Requires: chkconfig
|
||||||
|
Requires: libgpm = %{?epoch:%epoch:}%{version}-%{release}
|
||||||
|
Requires(post): %{__install_info}
|
||||||
|
BuildRoot: %{_tmppath}/%{name}-%{version}-root
|
||||||
|
|
||||||
|
%description
|
||||||
|
Gpm provides mouse support to text-based Linux applications like the emacs editor, the Midnight Commander file management system, and other programs.
|
||||||
|
Gpm also provides console cut-and-paste operations using the mouse and includes a program to allow pop-up menus to appear at the click of a mouse button.
|
||||||
|
|
||||||
|
%package -n libgpm
|
||||||
|
Group: System/Libraries
|
||||||
|
Summary: GPM libraries
|
||||||
|
|
||||||
|
%description -n libgpm
|
||||||
|
This package contains library files neccessary to run most of mouse-aware applications.
|
||||||
|
|
||||||
|
%package -n libgpm-devel
|
||||||
|
Group: Development/Libraries
|
||||||
|
Summary: Library and header files for developing mouse driven programs.
|
||||||
|
Requires: libgpm = %{?epoch:%epoch:}%{version}-%{release}
|
||||||
|
|
||||||
|
%description -n libgpm-devel
|
||||||
|
Library and header files for developing mouse driven programs.
|
||||||
|
|
||||||
|
%prep
|
||||||
|
[ "%{buildroot}" != / ] && rm -rf %{buildroot}
|
||||||
|
|
||||||
|
%setup -q
|
||||||
|
#%patch1 -p1 -b .evdev-cumulative
|
||||||
|
#%patch2 -p1 -b .math
|
||||||
|
#%patch3 -p1 -b .subscript
|
||||||
|
#%patch4 -p1 -b .input
|
||||||
|
#%patch5 -p1 -b .consolename
|
||||||
|
#%patch6 -p1 -b .close-fds
|
||||||
|
#%patch7 -p1 -b .aligned-sleep
|
||||||
|
#%patch8 -p1 -b .deadsocket
|
||||||
|
#%patch200 -p1
|
||||||
|
#%patch201 -p1
|
||||||
|
|
||||||
|
%build
|
||||||
|
./autogen.sh
|
||||||
|
CFLAGS="-D_GNU_SOURCE %{optflags}" \
|
||||||
|
lispdir=%{buildroot}%{_datadir}/emacs/site-lisp \
|
||||||
|
%configure --without-curses
|
||||||
|
|
||||||
|
# note: parallel build does not work
|
||||||
|
%make -j1
|
||||||
|
|
||||||
|
%install
|
||||||
|
%makeoldinstall lispdir=%{buildroot}%{_datadir}/emacs/site-lisp
|
||||||
|
|
||||||
|
install -m755 -D %{S:1} %{buildroot}%{_initrddir}/gpm
|
||||||
|
install -m644 -D %{S:2} %{buildroot}%{_sysconfdir}/gpm-root.conf
|
||||||
|
install -m644 -D %{S:3} %{buildroot}%{_sysconfdir}/sysconfig/mouse
|
||||||
|
|
||||||
|
# fix strange permission
|
||||||
|
chmod +x %{buildroot}%{_libdir}/libgpm.so.*
|
||||||
|
ln -s libgpm.so.2 %{buildroot}%{_libdir}/libgpm.so
|
||||||
|
|
||||||
|
%clean
|
||||||
|
[ "%{buildroot}" != / ] && rm -rf %{buildroot}
|
||||||
|
|
||||||
|
%post
|
||||||
|
if [ $1 -eq 1 ]; then
|
||||||
|
/sbin/chkconfig --add gpm 2>/dev/null
|
||||||
|
fi
|
||||||
|
%install_info gpm.info
|
||||||
|
exit 0
|
||||||
|
|
||||||
|
%preun
|
||||||
|
if [ $1 -eq 0 ]; then
|
||||||
|
/sbin/chkconfig --del gpm
|
||||||
|
[ -e /var/lock/subsys/gpm ] && service gpm stop
|
||||||
|
fi
|
||||||
|
%uninstall_info gpm.info
|
||||||
|
exit 0
|
||||||
|
|
||||||
|
%postun
|
||||||
|
if [ $1 -eq 1 ]; then
|
||||||
|
service gpm condrestart
|
||||||
|
fi
|
||||||
|
exit 0
|
||||||
|
|
||||||
|
%post -n libgpm -p /sbin/ldconfig
|
||||||
|
%postun -n libgpm -p /sbin/ldconfig
|
||||||
|
|
||||||
|
%files
|
||||||
|
%defattr(-,root,root)
|
||||||
|
%{_bindir}/display-buttons
|
||||||
|
%{_bindir}/display-coords
|
||||||
|
%{_bindir}/disable-paste
|
||||||
|
%{_bindir}/get-versions
|
||||||
|
%{_bindir}/gpm-root
|
||||||
|
%{_bindir}/hltest
|
||||||
|
%{_bindir}/mev
|
||||||
|
%{_bindir}/mouse-test
|
||||||
|
%{_sbindir}/gpm
|
||||||
|
%if "%{stage1}" != "1"
|
||||||
|
%{_datadir}/emacs/site-lisp/t-mouse.el
|
||||||
|
%{_datadir}/emacs/site-lisp/t-mouse.elc
|
||||||
|
%endif
|
||||||
|
%{_initrddir}/gpm
|
||||||
|
%{_infodir}/gpm.info.*
|
||||||
|
%{_mandir}/man1/gpm-root.*
|
||||||
|
%{_mandir}/man1/mev.*
|
||||||
|
%{_mandir}/man1/mouse-test.*
|
||||||
|
%{_mandir}/man7/gpm-types.*
|
||||||
|
%{_mandir}/man8/gpm.*
|
||||||
|
%config(noreplace) %{_sysconfdir}/gpm-root.conf
|
||||||
|
%config(noreplace) %{_sysconfdir}/sysconfig/mouse
|
||||||
|
|
||||||
|
%files -n libgpm
|
||||||
|
%defattr(-,root,root)
|
||||||
|
%{_libdir}/libgpm.so.*
|
||||||
|
%doc COPYING
|
||||||
|
|
||||||
|
%files -n libgpm-devel
|
||||||
|
%defattr(-,root,root)
|
||||||
|
%{_includedir}/gpm.h
|
||||||
|
%{_libdir}/libgpm.a
|
||||||
|
%{_libdir}/libgpm.so
|
||||||
|
%doc README TODO
|
||||||
|
%doc doc/README.* doc/FAQ doc/HACK_GPM
|
||||||
|
%doc conf/*.conf
|
||||||
|
|
||||||
|
%changelog
|
||||||
|
* Fri Dec 21 2012 Automatic Build System <autodist@mambasoft.it> 1.20.7-1mamba
|
||||||
|
- update to 1.20.7
|
||||||
|
|
||||||
|
* Fri Feb 05 2010 Silvan Calarco <silvan.calarco@mambasoft.it> 1.20.6-1mamba
|
||||||
|
- update to 1.20.6
|
||||||
|
|
||||||
|
* Fri Dec 12 2008 Silvan Calarco <silvan.calarco@mambasoft.it> 1.20.5-1mamba
|
||||||
|
- update to 1.20.5
|
||||||
|
|
||||||
|
* Fri Sep 07 2007 Silvan Calarco <silvan.calarco@mambasoft.it> 1.20.1-17mamba
|
||||||
|
- initscript: start later (98)
|
||||||
|
|
||||||
|
* Fri Aug 31 2007 Silvan Calarco <silvan.calarco@mambasoft.it> 1.20.1-16mamba
|
||||||
|
- initscript: enable repeater mode (-R) and add support for multiple USB devices
|
||||||
|
|
||||||
|
* Mon Apr 16 2007 Davide Madrisan <davide.madrisan@gmail.com> 1.20.1-15mamba
|
||||||
|
- install info file
|
||||||
|
- use service to call gpm initscript
|
||||||
|
- updated ldconfig cache
|
||||||
|
- initscript updated
|
||||||
|
- fixes compilation fixes
|
||||||
|
|
||||||
|
* Tue Feb 15 2005 Silvan Calarco <silvan.calarco@qinet.it> 1.20.1-14qilnx
|
||||||
|
- fixed detection of ImExPS/2 mouse
|
||||||
|
|
||||||
|
* Wed Feb 02 2005 Silvan Calarco <silvan.calarco@qinet.it> 1.20.1-13qilnx
|
||||||
|
- added nolibmessage patch again
|
||||||
|
|
||||||
|
* Tue Feb 01 2005 Silvan Calarco <silvan.calarco@qinet.it> 1.20.1-12qilnx
|
||||||
|
- added event device (kernel 2.6) support patches from http://www.geocities.com/dt_or/gpm/gpm.html
|
||||||
|
- removed previous applied patches
|
||||||
|
|
||||||
|
* Tue Feb 01 2005 Silvan Calarco <silvan.calarco@mambasoft.it> 1.20.1-11qilnx
|
||||||
|
- added patch not to print any message to standard error (unless debugging is on)
|
||||||
|
|
||||||
|
* Fri Jan 28 2005 Silvan Calarco <silvan.calarco@mambasoft.it> 1.20.1-10qilnx
|
||||||
|
- added missing libgpm.so.1 symlink
|
||||||
|
- added imps/2 mouse type detect in /proc/bus/input/devices
|
||||||
|
|
||||||
|
* Thu Jan 27 2005 Davide Madrisan <davide.madrisan@qilinux.it> 1.20.1-9qilnx
|
||||||
|
- updated gpm initscript to support kernel 2.6.x extensions
|
||||||
|
- created devel package
|
||||||
|
- added some basic documentation
|
||||||
|
- fix wrong permissions of a few files
|
||||||
|
|
||||||
|
* Tue Jan 04 2005 Silvan Calarco <silvan.calarco@mambasoft.it> 1.20.1-8qilnx
|
||||||
|
- don't activate service on install and restart/stop conditionally
|
||||||
|
|
||||||
|
* Tue Aug 17 2004 Silvan Calarco <silvan.calarco@mambasoft.it> 1.20.1-7qilnx
|
||||||
|
- changed initscript to suppress annoying error messages
|
||||||
|
|
||||||
|
* Mon Aug 09 2004 Silvan Calarco <silvan.calarco@qinet.it> 1.20.1-6qilnx
|
||||||
|
- added REPEAT_TYPE=<empty> default option to make gpm mouse work with XFree
|
||||||
|
|
||||||
|
* Mon Jun 23 2003 Silvan Calarco <silvan.calarco@qinet.it> 1.20.1-5qilnx
|
||||||
|
- added correct %post and %pre scripts
|
||||||
|
|
||||||
|
* Thu May 08 2003 Silvan Calarco <silvan.calarco@qinet.it> 1.20.1-4qilnx
|
||||||
|
- added libgpm package
|
||||||
|
|
||||||
|
* Thu Apr 24 2003 Alessandro Ramazzina <alessandro.ramazzina@qinet.it> 1.20.1-3qilnx
|
||||||
|
- added better service startup
|
||||||
|
|
||||||
|
* Wed Apr 16 2003 Alessandro Ramazzina <alessandro.ramazzina@qinet.it> 1.20.1-2qilnx
|
||||||
|
- added configuration files and service startup
|
||||||
|
|
||||||
|
* Wed Apr 16 2003 Alessandro Ramazzina <alessandro.ramazzina@qinet.it> 1.20.1-1qilnx
|
||||||
|
- creation of gpm package
|
7
mouse-sysconfig
Normal file
7
mouse-sysconfig
Normal file
@ -0,0 +1,7 @@
|
|||||||
|
MOUSETYPE=imps2
|
||||||
|
XMOUSETYPE=PS/2
|
||||||
|
FULLNAME="PS/2|Standard"
|
||||||
|
XEMU3=yes
|
||||||
|
WHEEL=no
|
||||||
|
device=psaux
|
||||||
|
REPEAT_TYPE=
|
Loading…
Reference in New Issue
Block a user