ports/52616: NEW PORT: hotkeys allows use of extra keys on multimedia keyboarrds

Andy Pavlo amp0928 at rit.edu
Fri May 23 16:40:07 UTC 2003


>Number:         52616
>Category:       ports
>Synopsis:       NEW PORT: hotkeys allows use of extra keys on multimedia keyboarrds
>Confidential:   no
>Severity:       non-critical
>Priority:       low
>Responsible:    freebsd-ports-bugs
>State:          open
>Quarter:        
>Keywords:       
>Date-Required:
>Class:          change-request
>Submitter-Id:   current-users
>Arrival-Date:   Fri May 23 09:40:04 PDT 2003
>Closed-Date:
>Last-Modified:
>Originator:     Andy Pavlo
>Release:        FreeBSD 4.7-RELEASE i386
>Organization:
Rochester Institute of Technology
>Environment:
System: FreeBSD res01621.rh.rit.edu 4.7-RELEASE FreeBSD 4.7-RELEASE #0: Wed Oct 9 15:08:34 GMT 2002 root at builder.freebsdmall.com:/usr/obj/usr/src/sys/GENERIC i386

>Description:

hotkeys
This program sits at the back and listens for the "special" hotkeys that
you won't normally use on your internet/Multimedia keyboards.
The buttons perform their intended behaviors, such as volume up and down,
mute the speaker, launch applications, etc. Also installs an on-screen display.

>How-To-Repeat:
New Port Submission
I'm not sure if I was suppose to tar up my port like hte instrctions said because other people aren't doing it
So please excuse me if I did this wrong.
This is actually a resubmission because the first one didn't go through apparently

>Fix:
# This is a shell archive.  Save it in a file, remove anything before
# this line, and then unpack it by entering "sh file".  Note, it may
# create directories; files and directories will be owned by you and
# have default permissions.
#
# This archive contains:
#
#	hotkeys
#	hotkeys/Makefile
#	hotkeys/distinfo
#	hotkeys/files
#	hotkeys/files/error.h
#	hotkeys/files/eliteduo.def
#	hotkeys/files/patch-src-hotkeys.c
#	hotkeys/files/patch-src-kbddef.c
#	hotkeys/files/patch-configure
#	hotkeys/files/patch-src-Makefile
#	hotkeys/files/patch-src-conf.c
#	hotkeys/files/patch-src-kbddef.h
#	hotkeys/pkg-descr
#	hotkeys/pkg-plist
#	hotkeys/pkg-message
#
echo c - hotkeys
mkdir -p hotkeys > /dev/null 2>&1
echo x - hotkeys/Makefile
sed 's/^X//' >hotkeys/Makefile << 'END-of-hotkeys/Makefile'
X# New ports collection makefile for:    xquote
X# Date created:         May 20th, 2003
X# Whom:                 Andy Pavlo <amp0928 at rit.edu>
X#
X# $FreeBSD: $
X
XPORTNAME=       hotkeys
XPORTVERSION=    0.5.7.1
XCATEGORIES=     misc
XMASTER_SITES=   http://ypwong.org/hotkeys/${PORTVERSION}/     \
X		${MASTER_SITE_XCONTRIB}
XDISTNAME=       hotkeys_${PORTVERSION}
X
XMAINTAINER=     ports at freebsd.org
XCOMMENT=        Allows usuage of special keys on internet/multimedia keyboards
X
XLIB_DEPENDS=	xosd.3:${PORTSDIR}/misc/xosd \
X                xml2.5:${PORTSDIR}/textproc/libxml2 \
X		db3.3:${PORTSDIR}/databases/db3
X
XWRKSRC=         ${WRKDIR}/${PORTNAME}-${PORTVERSION}
XGNU_CONFIGURE=	1
XCONFIGURE_ARGS=	--with-db3-inc=${LOCALBASE}/include/db3 \
X		--with-db3-lib=${LOCALBASE}/lib \
X		--with-xosd
XUSE_GMAKE=	yes
X
XMAN1=		hotkeys.1
XORIG_CONFIG=	${PREFIX}/etc/hotkeys.conf
XSAMPLE_CONFIG=	${PREFIX}/etc/hotkeys.conf.sample
X
X
Xpost-extract:
X	@${CP} ${PATCHDIR}/error.h ${WRKSRC}/src
X	@${CP} ${PATCHDIR}/eliteduo.def ${WRKSRC}/def
X
Xpost-install:
X	@${MV} ${ORIG_CONFIG} ${SAMPLE_CONFIG}
X	@${CAT} ${PKGMESSAGE}
X
X.include <bsd.port.mk>
END-of-hotkeys/Makefile
echo x - hotkeys/distinfo
sed 's/^X//' >hotkeys/distinfo << 'END-of-hotkeys/distinfo'
XMD5 (hotkeys_0.5.7.1.tar.gz) = 68e2aea6b4444f943b5f85ac00542a1c
END-of-hotkeys/distinfo
echo c - hotkeys/files
mkdir -p hotkeys/files > /dev/null 2>&1
echo x - hotkeys/files/error.h
sed 's/^X//' >hotkeys/files/error.h << 'END-of-hotkeys/files/error.h'
X/* Declaration for error-reporting function
X   Copyright (C) 1995, 1996, 1997 Free Software Foundation, Inc.
X   This file is part of the GNU C Library.  Its master source is NOT part of
X   the C library, however.  The master source lives in /gd/gnu/lib.
X
X   The GNU C Library is free software; you can redistribute it and/or
X   modify it under the terms of the GNU Lesser General Public
X   License as published by the Free Software Foundation; either
X   version 2.1 of the License, or (at your option) any later version.
X
X   The GNU C Library is distributed in the hope that it will be useful,
X   but WITHOUT ANY WARRANTY; without even the implied warranty of
X   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
X   Lesser General Public License for more details.
X
X   You should have received a copy of the GNU Lesser General Public
X   License along with the GNU C Library; if not, write to the Free
X   Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
X   02111-1307 USA.  */
X
X#ifndef _ERROR_H
X#define _ERROR_H 1
X
X#ifndef __attribute__
X/* This feature is available in gcc versions 2.5 and later.  */
X# if __GNUC__ < 2 || (__GNUC__ == 2 && __GNUC_MINOR__ < 5) || __STRICT_ANSI__
X#  define __attribute__(Spec) /* empty */
X# endif
X/* The __-protected variants of `format' and `printf' attributes
X   are accepted by gcc versions 2.6.4 (effectively 2.7) and later.  */
X# if __GNUC__ < 2 || (__GNUC__ == 2 && __GNUC_MINOR__ < 7)
X#  define __format__ format
X#  define __printf__ printf
X# endif
X#endif
X
X#ifdef	__cplusplus
Xextern "C" {
X#endif
X
X#if defined (__STDC__) && __STDC__
X
X/* Print a message with `fprintf (stderr, FORMAT, ...)';
X   if ERRNUM is nonzero, follow it with ": " and strerror (ERRNUM).
X   If STATUS is nonzero, terminate the program with `exit (STATUS)'.  */
X
Xextern void error (int status, int errnum, const char *format, ...)
X     __attribute__ ((__format__ (__printf__, 3, 4)));
X
Xextern void error_at_line (int status, int errnum, const char *fname,
X			   unsigned int lineno, const char *format, ...)
X     __attribute__ ((__format__ (__printf__, 5, 6)));
X
X/* If NULL, error will flush stdout, then print on stderr the program
X   name, a colon and a space.  Otherwise, error will call this
X   function without parameters instead.  */
Xextern void (*error_print_progname) (void);
X
X#else
Xvoid error ();
Xvoid error_at_line ();
Xextern void (*error_print_progname) ();
X#endif
X
X/* This variable is incremented each time `error' is called.  */
Xextern unsigned int error_message_count;
X
X/* Sometimes we want to have at most one error per line.  This
X   variable controls whether this mode is selected or not.  */
Xextern int error_one_per_line;
X
X#ifdef	__cplusplus
X}
X#endif
X
X#endif /* error.h */
END-of-hotkeys/files/error.h
echo x - hotkeys/files/eliteduo.def
sed 's/^X//' >hotkeys/files/eliteduo.def << 'END-of-hotkeys/files/eliteduo.def'
X<?xml version="1.0"?>
X
X<definition>
X
X  <config model="Logitech Cordless iTouch/Internet/Cordless Desktop">
X  
X    <PrevTrack    keycode="144"/>
X    <Play         keycode="162"/>
X    <Stop         keycode="164"/>
X    <NextTrack    keycode="153"/>
X  
X    <VolUp        keycode="176" adj="2"/>
X    <VolDown      keycode="174" adj="2"/>
X    <Mute         keycode="160"/>
X  
X    <Email        keycode="236"/>
X    <Messenger    keycode="145"/>
X    <Webcam       keycode="146"/>
X    <Media        keycode="237"/>
X    <Search       keycode="229"/>
X    <Shopping     keycode="148"/>
X    <WebBrowser   keycode="178"/>
X    <Sleep        keycode="223"/>
X  
X    <!-- iTouch F-Key Utilities -->
X    <Print        keycode="122"/>
X    <MyComputer   keycode="195"/>
X    <MyDocuments  keycode="196"/>
X
X    <!-- Feel free to customize this -->
X  
X    <userdef keycode="230" command="/usr/bin/mozilla -remote 'openURL(http://google.com)'">Go to URL</userdef>
X  
X    <!-- Logitech key -->
X    <userdef keycode="161" command="xman">Xman</userdef>
X  
X  </config>
X  
X  <contributor>
X    <name>to be added</name>
X    <email>to be added</email>
X  </contributor>
X
X</definition>
END-of-hotkeys/files/eliteduo.def
echo x - hotkeys/files/patch-src-hotkeys.c
sed 's/^X//' >hotkeys/files/patch-src-hotkeys.c << 'END-of-hotkeys/files/patch-src-hotkeys.c'
X--- src/hotkeys.c.orig	Tue Dec  3 14:26:32 2002
X+++ src/hotkeys.c	Sun May 11 22:56:06 2003
X@@ -66,9 +66,9 @@
X #endif                          /* __FreeBSD__ */
X 
X /* CDROM related */
X-#include <linux/cdrom.h>        /* FIXME: linux specific! */
X+//#include <linux/cdrom.h>        /* FIXME: linux specific! */
X /* APM (suspend/standby) support */
X-#include "apm.h"
X+//#include "apm.h"
X #if HAVE_GTK
X   #include "splash.h"
X #endif
X@@ -585,7 +585,7 @@
X {
X     int         mixer_fd = -1, cdrom_fd = -1;
X     int         master_vol, cd_vol;
X-    struct cdrom_volctrl cdrom_vol;
X+//    struct cdrom_volctrl cdrom_vol;
X     int         left, right;
X     static struct timeval last_time;
X     struct timeval this_time;
X@@ -683,6 +683,7 @@
X     }
X 
X     /* open the cdrom/dvdrom drive device */
X+/***** ANDY: No CD support yet
X     if ( cdromDevice != NULL )
X     {
X         if ( (cdrom_fd = open( cdromDevice, O_RDONLY|O_NONBLOCK )) == -1 )
X@@ -691,7 +692,7 @@
X         }
X         else
X         {
X-            /* read the cdrom volume */
X+            || read the cdrom volume ||
X             if ( ioctl(cdrom_fd, CDROMVOLREAD, &cdrom_vol) == -1 )
X             {
X                 uError("Unable to read the CDROM volume of `%s'", cdromDevice);
X@@ -699,7 +700,7 @@
X             }
X             else
X             {
X-                /* Set the CDROM volume */
X+                || Set the CDROM volume ||
X                 int     t;
X                 float   myAdj;
X                 myAdj = 0xFF / 100.0 * adj;
X@@ -721,9 +722,10 @@
X             }
X         }
X     }
X+END Andy *****/
X 
X     if (mixer_fd != -1)     close(mixer_fd);
X-    if (cdrom_fd != -1)     close(cdrom_fd);
X+//Andy    if (cdrom_fd != -1)     close(cdrom_fd);
X 
X     return ret;
X }
X@@ -737,10 +739,10 @@
X {
X     static Bool             muted = False;
X     static int              last_mixer_vol, last_cd_vol;
X-    static struct cdrom_volctrl last_cdrom_vol;
X+//Andy    static struct cdrom_volctrl last_cdrom_vol;
X 
X     int                     vol, cd_vol;
X-    struct cdrom_volctrl    cdrom_vol;
X+//Andy    struct cdrom_volctrl    cdrom_vol;
X     int                     mixer_fd = -1, cdrom_fd = -1;
X 
X     short ret = 0;      /* return value */
X@@ -751,6 +753,7 @@
X         uError("Unable to open `%s'", MIXER_DEV);
X     }
X     /* open the cdrom/dvdrom drive device */
X+/***** Andy: No CD support
X     if ( cdromDevice != NULL )
X     {
X         if ( (cdrom_fd = open( cdromDevice, O_RDONLY|O_NONBLOCK )) == -1 )
X@@ -758,6 +761,7 @@
X             uError("Unable to open `%s'", cdromDevice);
X         }
X     }
X+END Andy *****/
X 
X     if ( muted )
X     {
X@@ -783,6 +787,7 @@
X #endif
X             }
X         }
X+/***** Andy: No CD support
X #if 0
X         if (SOUND_IOCTL(mixer_fd, SOUND_MIXER_WRITE_CD, &last_cd_vol) == -1)
X         {
X@@ -800,6 +805,7 @@
X             } else
X                 muted = False;
X         }
X+End Andy *****/
X     }
X     else    /* ! muted */
X     {
X@@ -837,6 +843,7 @@
X                 }
X             }
X         }
X+/***** Andy: No CD support
X #if 0
X         if ( SOUND_IOCTL(mixer_fd, SOUND_MIXER_READ_CD, &last_cd_vol) == -1)
X         {
X@@ -853,7 +860,9 @@
X                 muted = True;
X         }
X #endif
X+End Andy *****/
X         /* read and store the cdrom volume */
X+/***** Andy: No CD support
X         if (cdrom_fd != -1)
X         {
X             if ( ioctl(cdrom_fd, CDROMVOLREAD, &last_cdrom_vol) == -1 )
X@@ -863,8 +872,8 @@
X             }
X             else
X             {
X-                /* Set the volume to 0. FIXME: is this linux specific? Do
X-                 * other platforms also have 4 channels? */
X+                || Set the volume to 0. FIXME: is this linux specific? Do
X+                 * other platforms also have 4 channels? ||
X                 cdrom_vol.channel0 = cdrom_vol.channel1 = cdrom_vol.channel2 =
X                     cdrom_vol.channel3 = 0;
X                 if ( ioctl(cdrom_fd, CDROMVOLCTRL, &cdrom_vol) == -1 )
X@@ -875,10 +884,11 @@
X                     muted = True;
X             }
X         }
X+End Andy *****/
X     }
X 
X     if (mixer_fd != -1)   close(mixer_fd);
X-    if (cdrom_fd != -1)   close(cdrom_fd);
X+//Andy    if (cdrom_fd != -1)   close(cdrom_fd);
X 
X     return ret;
X }
X@@ -886,19 +896,20 @@
X static int 
X ejectDisc(void)
X {
X+/***** Andy: No CD support
X     int fd, status;
X 
X     if ( cdromDevice == NULL )
X         return 0;
X 
X-    /* the idea of this code is from xine's vcd plugin, mostly linux
X-       specific FIXME */
X+    || the idea of this code is from xine's vcd plugin, mostly linux
X+       specific FIXME ||
X     if ( (fd = open( cdromDevice, O_RDONLY | O_NONBLOCK)) > -1 ) {
X         status = ioctl(fd, CDROM_DRIVE_STATUS, CDSL_CURRENT);
X         switch (status)
X         {
X-            /* Looks like ATAPI drives doesn't return CDS_TRAY_OPEN,
X-             * at least it's the case on my ASUS DVD drive... */
X+            || Looks like ATAPI drives doesn't return CDS_TRAY_OPEN,
X+             * at least it's the case on my ASUS DVD drive... ||
X             case CDS_TRAY_OPEN:
X #ifdef HAVE_LIBXOSD
X                 if ( osd )
X@@ -929,7 +940,7 @@
X             case CDS_NO_INFO:
X             case CDS_DRIVE_NOT_READY:
X             default:
X-                /* Ignore */
X+                || Ignore ||
X                 break;
X         }
X         close(fd);
X@@ -940,6 +951,7 @@
X         SYSLOG(LOG_NOTICE, "CDROM_DRIVE_STATUS failed: %s\n", strerror(errno));
X         return -1;
X     }
X+End Andy *****/
X }
X 
X 
X@@ -1002,8 +1014,8 @@
X #ifdef HAVE_LIBXOSD
X         if ( osd )
X         {
X-            xosd_display(osd, 0, XOSD_string, "Launching:");
X-            xosd_display(osd, 1, XOSD_string, getConfig(type));
X+            xosd_display(osd, 0, XOSD_string, type);
X+            xosd_display(osd, 1, XOSD_string, "");
X         }
X #endif
X     }
X@@ -1015,13 +1027,14 @@
X int
X sleepState(int mode)
X {
X+/***** Andy: No APM support
X #ifdef USE_APMD
X     switch (mode)
X     {
X-      case SUSPEND:
X+    //  case SUSPEND:
X         error = system("apm -s");
X         break;
X-      case STANDBY:
X+    //  case STANDBY:
X         error = system("apm -S");
X         break;
X       default:
X@@ -1039,10 +1052,10 @@
X     }
X     switch (mode)
X     {
X-      case SUSPEND:
X+     // case SUSPEND:
X         error = apm_suspend(fd);
X         break;
X-      case STANDBY:
X+     // case STANDBY:
X         error = apm_standby(fd);
X         break;
X       default:
X@@ -1050,7 +1063,9 @@
X         break;
X     }
X     apm_close(fd);
X-#endif /* USE_APMD */
X+#endif 
X+End Andy *****/
X+/* USE_APMD */
X }
X 
X 
X@@ -1105,8 +1120,8 @@
X #ifdef HAVE_LIBXOSD
X                 if ( osd )
X                 {
X-                    xosd_display(osd, 0, XOSD_string, "Launching:");
X-                    xosd_display(osd, 1, XOSD_string, kbd.customCmds[i].desc);
X+                    xosd_display(osd, 0, XOSD_string, kbd.customCmds[i].desc);
X+                    xosd_display(osd, 1, XOSD_string, "");
X                 }
X #endif
X                 break;  /* break the for loop */
X@@ -1444,6 +1459,7 @@
X                         3       /* shadow offset */,
X                         3       /* number_lines */ 
X                         );
X+        xosd_set_align(osd, XOSD_center);
X     }
X #endif
X }
X@@ -1592,6 +1608,7 @@
X                 doMute();
X             } else
X             /* APM stuffs */
X+/**** Andy: No APM support
X             if ( ev.message.keycode == (kbd.defCmds)[sleepKey].key ||
X                  ev.message.keycode == (kbd.defCmds)[wakeupKey].key ) {
X                 sleepState(STANDBY);
X@@ -1601,8 +1618,9 @@
X             }
X             else
X             {
X+End Andy *****/
X                 lookupUserCmd(ev.message.keycode);  /* User-defined stuffs */
X-            }
X+//Andy            }
X         }
X     }
X 
END-of-hotkeys/files/patch-src-hotkeys.c
echo x - hotkeys/files/patch-src-kbddef.c
sed 's/^X//' >hotkeys/files/patch-src-kbddef.c << 'END-of-hotkeys/files/patch-src-kbddef.c'
X--- src/kbddef.c.orig	Wed Nov 27 14:51:11 2002
X+++ src/kbddef.c	Sun May 11 16:01:17 2003
X@@ -37,8 +37,8 @@
X  */
X #include "XF86keysym.h"
X 
X-#include <xmlmemory.h>
X-#include <parser.h>
X+#include <libxml2/libxml/xmlmemory.h>
X+#include <libxml2/libxml/parser.h>
X 
X #include "hotkeys.h"
X #include "kbddef.h"
X@@ -71,6 +71,9 @@
X     { "MyComputer",             myComputerKey,      XF86XK_MyComputer },
X     { "Favorites",              favoritesKey,       XF86XK_Favorites },
X     { "Calculator",             calculatorKey,      XF86XK_Calculator },
X+    { "Messenger",              messengerKey,       0 },
X+    { "Webcam",                 webcamKey,          0 },
X+    { "Media",                  mediaKey,           0 },
X     { "NewsReader",             newsReaderKey,      0 },
X     { "iNews",                  iNewsKey,           0 },
X     { "Rewind",                 rewindKey,          0 },
END-of-hotkeys/files/patch-src-kbddef.c
echo x - hotkeys/files/patch-configure
sed 's/^X//' >hotkeys/files/patch-configure << 'END-of-hotkeys/files/patch-configure'
X--- configure.orig	Sun Dec  8 09:34:24 2002
X+++ configure	Sun May 11 22:17:53 2003
X@@ -251,6 +251,7 @@
X # Initializations.
X #
X ac_default_prefix=/usr/local
X+
X ac_config_libobj_dir=.
X cross_compiling=no
X subdirs=
X@@ -648,6 +649,21 @@
X   esac
X done
X 
X+#################################################################
X+## Andy Pavlo
X+## For some reason it wouldn't install in the right 
X+## dir if we gave it a prefix
X+## I hope this fixes it 
X+#################################################################
X+if test $prefix != "NONE"; then
X+  ac_default_prefix=$prefix
X+else
X+  ac_default_prefix=$ac_default_prefix
X+fi
X+#################################################################
X+## END FIX
X+#################################################################
X+
X if test -n "$ac_prev"; then
X   ac_option=--`echo $ac_prev | sed 's/_/-/g'`
X   { echo "$as_me: error: missing argument to $ac_option" >&2
X@@ -4353,13 +4369,13 @@
X fi
X 
X 
X-echo "$as_me:$LINENO: checking for pthread_create in -lpthread" >&5
X-echo $ECHO_N "checking for pthread_create in -lpthread... $ECHO_C" >&6
X+echo "$as_me:$LINENO: checking for pthread_create in -pthread" >&5
X+echo $ECHO_N "checking for pthread_create in -pthread... $ECHO_C" >&6
X if test "${ac_cv_lib_pthread_pthread_create+set}" = set; then
X   echo $ECHO_N "(cached) $ECHO_C" >&6
X else
X   ac_check_lib_save_LIBS=$LIBS
X-LIBS="-lpthread  $LIBS"
X+LIBS="-pthread  $LIBS"
X cat >conftest.$ac_ext <<_ACEOF
X #line $LINENO "configure"
X /* confdefs.h.  */
X@@ -4412,7 +4428,7 @@
X #define HAVE_LIBPTHREAD 1
X _ACEOF
X 
X-  LIBS="-lpthread $LIBS"
X+  LIBS="-pthread $LIBS"
X 
X fi
X 
END-of-hotkeys/files/patch-configure
echo x - hotkeys/files/patch-src-Makefile
sed 's/^X//' >hotkeys/files/patch-src-Makefile << 'END-of-hotkeys/files/patch-src-Makefile'
X--- src/Makefile.in.orig	Sun Dec  8 09:34:44 2002
X+++ src/Makefile.in	Sun May 11 16:18:57 2003
X@@ -96,7 +96,7 @@
X l = @l@
X 
X bin_PROGRAMS = hotkeys
X-hotkeys_SOURCES = hotkeys.c kbddef.c conf.c fixVMware.c apmlib.c xmalloc.c                   splash.c                   XF86keysym.h apm.h common.h conf.h hotkeys.h kbddef.h                   xmalloc.h splash.h
X+hotkeys_SOURCES = hotkeys.c kbddef.c conf.c fixVMware.c xmalloc.c                   splash.c                   XF86keysym.h common.h conf.h hotkeys.h kbddef.h                   xmalloc.h splash.h
X 
X sysconf_DATA = hotkeys.conf
X man_MANS = hotkeys.1
X@@ -120,7 +120,7 @@
X X_LIBS = @X_LIBS@
X X_EXTRA_LIBS = @X_EXTRA_LIBS@
X X_PRE_LIBS = @X_PRE_LIBS@
X-hotkeys_OBJECTS =  hotkeys.o kbddef.o conf.o fixVMware.o apmlib.o \
X+hotkeys_OBJECTS =  hotkeys.o kbddef.o conf.o fixVMware.o \
X xmalloc.o splash.o
X hotkeys_LDADD = $(LDADD)
X hotkeys_DEPENDENCIES = 
END-of-hotkeys/files/patch-src-Makefile
echo x - hotkeys/files/patch-src-conf.c
sed 's/^X//' >hotkeys/files/patch-src-conf.c << 'END-of-hotkeys/files/patch-src-conf.c'
X--- src/conf.c.orig	Wed Nov 27 14:30:08 2002
X+++ src/conf.c	Sun May 11 16:01:17 2003
X@@ -25,7 +25,7 @@
X #include "common.h"
X 
X #include <stdio.h>
X-#include <db.h>
X+#include </usr/local/include/db3/db.h>
X #include <string.h>
X #include <sys/param.h>
X 
X@@ -68,6 +68,9 @@
X     "Shopping",        "mozilla -remote 'openURL(http://thinkgeek.com)'",
X     "Go",              "mozilla -remote 'openURL(http://linux.com)'",
X     "Print",           "lpr",
X+    "Messenger",       "gaim",
X+    "Webcam",          "\0",
X+    "Media",           "xmms",
X /*
X     "Screendump",      "xwd -root",
X */
END-of-hotkeys/files/patch-src-conf.c
echo x - hotkeys/files/patch-src-kbddef.h
sed 's/^X//' >hotkeys/files/patch-src-kbddef.h << 'END-of-hotkeys/files/patch-src-kbddef.h'
X--- src/kbddef.h.orig	Mon Mar 19 01:51:24 2001
X+++ src/kbddef.h	Sun May 11 16:01:17 2003
X@@ -55,6 +55,9 @@
X     myComputerKey,
X     favoritesKey,
X     calculatorKey,
X+    messengerKey,
X+    webcamKey,
X+    mediaKey,
X     newsReaderKey,
X     iNewsKey,
X     rewindKey,
END-of-hotkeys/files/patch-src-kbddef.h
echo x - hotkeys/pkg-descr
sed 's/^X//' >hotkeys/pkg-descr << 'END-of-hotkeys/pkg-descr'
XThis program sits at the back and listens for the "special" hotkeys that 
Xyou won't normally use on your internet/Multimedia keyboards.
XThe buttons perform their intended behaviors, such as volume up and down, 
Xmute the speaker, launch applications, etc.
X
XNOTE: CDROM & APM features have been disabled
X
XWWW: http://ypwong.org/hotkeys/
X
X-Andy Pavlo
Xamp0928 at rit.edu
END-of-hotkeys/pkg-descr
echo x - hotkeys/pkg-plist
sed 's/^X//' >hotkeys/pkg-plist << 'END-of-hotkeys/pkg-plist'
Xbin/hotkeys
Xetc/hotkeys.conf.sample
Xshare/hotkeys/splash.png
Xshare/hotkeys/acerwl.def
Xshare/hotkeys/btc9000.def
Xshare/hotkeys/eliteduo.def
Xshare/hotkeys/hp5181.def
Xshare/hotkeys/ibook.def
Xshare/hotkeys/itouch.def
Xshare/hotkeys/kb9930.def
Xshare/hotkeys/kb9963.def
Xshare/hotkeys/kbp8993.def
Xshare/hotkeys/logitech-cfo.def
Xshare/hotkeys/mck800.def
Xshare/hotkeys/msnatpro.def
Xshare/hotkeys/msnet.def
Xshare/hotkeys/msnetpro.def
Xshare/hotkeys/mx1998.def
Xshare/hotkeys/mx2500.def
Xshare/hotkeys/mx3000.def
Xshare/hotkeys/orktekusb.def
Xshare/hotkeys/pb5140w.def
Xshare/hotkeys/polypix.def
Xshare/hotkeys/sk2500.def
Xshare/hotkeys/sk2501a.def
Xshare/hotkeys/sk2505.def
Xshare/hotkeys/sk2800c.def
Xshare/hotkeys/sk7100.def
Xshare/hotkeys/sk9925.def
X at dirrm share/hotkeys
END-of-hotkeys/pkg-plist
echo x - hotkeys/pkg-message
sed 's/^X//' >hotkeys/pkg-message << 'END-of-hotkeys/pkg-message'
X
X=======================================================================
X At this current stage CDROM & APM support has been disabled.
X I will need to remap the linux CDROM cdrom.h code to work with 
X FreeBSD's cdio.h library
X=======================================================================
X
XRename ${PREFIX}/etc/hotkeys.conf.default to ${PREFIX}/etc/hotkeys.conf
Xand edit to setup your keyboard settings
X
X -- OR --
X
XCopy to ~/.hotkeys/hotkeys.conf and edit config there
X
X=======================================================================
X
END-of-hotkeys/pkg-message
exit


>Release-Note:
>Audit-Trail:
>Unformatted:



More information about the freebsd-ports-bugs mailing list