summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--misc/lbdb/README6
-rw-r--r--misc/lbdb/README.Slackware209
-rw-r--r--misc/lbdb/doinst.sh15
-rw-r--r--misc/lbdb/lbdb.SlackBuild98
-rw-r--r--misc/lbdb/lbdb.info10
-rw-r--r--misc/lbdb/slack-desc19
6 files changed, 357 insertions, 0 deletions
diff --git a/misc/lbdb/README b/misc/lbdb/README
new file mode 100644
index 0000000000..2e698c7c78
--- /dev/null
+++ b/misc/lbdb/README
@@ -0,0 +1,6 @@
+The Little Brother's Database
+
+This package was inspired by the Big Brother Database package
+available for various Emacs mailers, and by Brandon Long's "external
+query" patch for the mutt mail user agent (Note that this patch has
+been incorporated into the main-line mutt versions as of mutt 0.93.)
diff --git a/misc/lbdb/README.Slackware b/misc/lbdb/README.Slackware
new file mode 100644
index 0000000000..a5138863b8
--- /dev/null
+++ b/misc/lbdb/README.Slackware
@@ -0,0 +1,209 @@
+ The Little Brother's Database
+
+ Roland Rosenfeld <roland@spinnaker.de> (current maintainer)
+ Thomas Roessler <roessler@guug.de> (initial author)
+
+This package was inspired by the Big Brother Database package
+available for various Emacs mailers, and by Brandon Long's "external
+query" patch for the mutt mail user agent (Note that this patch has
+been incorporated into the main-line mutt versions as of mutt 0.93.)
+
+The package doesn't use any formal database libraries or languages,
+although it should be quite easy to extend it to use, e.g., an
+installed PostgreSQL server as it's backend.
+
+For querying the Little Brother, just type "lbdbq <something>". lbdbq
+will now attempt to invoke various modules to gather information about
+persons matching "<something>". E.g., it may look at a list of
+addresses from which you have received mail, it may look at YP maps,
+or it may try to finger <something>@<various hosts>.
+
+The behavior is configurable: Upon startup, lbdbq will source the
+shell scripts
+
+ /usr/local/etc/lbdb.rc (or where your @sysconfdir@ points to)
+ $HOME/.lbdbrc
+ $HOME/.lbdb/lbdbrc
+ $HOME/.lbdb/rc
+
+if they exist.
+
+They can be used to set the following global variables:
+
+- MODULES_PATH: Where lbdbq should look for modules
+
+- METHODS: What modules to use.
+
+- SORT_OUTPUT: Set this to "false" or "no" and lbdbq won't sort the
+ addresses but returns them in reverse order (which means that the
+ most recent address in m_inmail database is first). If you set this
+ to "name", lbdbq sorts the output by real name. If you set this to
+ "comment", it sort the output by the comment (for example the date
+ in m_inmail). If you set this to "address", lbdbq sorts the output
+ by addresses (that's the default).
+
+
+Note that there _are_ defaults, so you should most probably modify
+these variables using constructs like this:
+
+ MODULES_PATH="MODULES_PATH $HOME/lbdb_modules"
+
+Additionally, modules may have configuration variables of their own.
+
+Currently the following modules are supplied with lbdb:
+
+m_finger
+ This module will use finger to find out something more about a
+ person. The list of hosts do be asked is configurable; use the
+ M_FINGER_HOSTS variable. Note that "localhost" will mean an
+ invocation of your local finger(1) binary, and should thus work
+ even if you don't provide the finger service to the network.
+ m_finger tries to find out the machines mail domain name in
+ /etc/mailname, by parsing a sendmail.cf file (if it finds one)
+ and by reading /etc/hostname and /etc/HOSTNAME.
+
+m_inmail
+ This module will look up user name fragments in a list of mail
+ addresses created by lbdb-fetchaddr(1).
+
+m_passwd
+ This module searches for matching entries in your local
+ /etc/passwd file. It evaluates the local machine mail domain in
+ the same way m_finger does. If you set PASSWD_IGNORESYS=true,
+ this module ignores all system accounts and only finds UIDs
+ between 1000 and 29999 (all other UIDs are reserved on a Debian
+ system).
+
+m_yppasswd
+ This module searches for matching entries in your NIS password
+ file using the command "ypcat passwd".
+
+m_nispasswd
+ This module searches for matching entries in the NIS+ password
+ database using the command ``niscat passwd.org_dir''.
+
+m_getent
+ This module searches for matching entries in whatever password
+ database is configured using the command ``getent passwd''.
+
+m_pgp2, m_pgp5, m_gpg
+ These modules scan your PGP 2.*, PGP 5.* or GnuPG public key
+ ring for data. They use the programs pgp(1), pgpk(1), or gpg(1)
+ to get the data.
+
+m_fido
+ This module searches your Fido nodelist, stored in
+ $HOME/.lbdb/nodelist created by nodelist2lbdb(1).
+
+m_abook
+ This module uses the program abook
+ (http://www.linuxstart.com/~jheinonen/abook/), a text based
+ address book application to search for addresses. You can
+ define multiple abook address books by setting the variable
+ ABOOK_FILES to a space separated list.
+
+m_addr_email
+ This module uses addr-email from the addressbook
+ (http://red.roses.de/~clemens/addressbook/) Tk program to
+ search for addresses.
+
+m_muttalias
+ This module searches the variable MUTTALIAS_FILES (a space
+ separated list) of files in MUTT_DIRECTORY that contain mutt
+ aliases. File names without leading slash will have
+ MUTT_DIRECTORY (defaults to $HOME/.mutt or $HOME, if
+ $HOME/.mutt does not exist) prepended before the file name.
+ Absolute file names (beginning with /) will be taken direct.
+
+m_pine
+ This module searches pine(1) addressbook files for
+ aliases. To realize this it first inspects the variable PINERC.
+ If it isn't set, the default `/etc/pine.conf
+ /etc/pine.conf.fixed .pinerc' is used. To suppress inspecting
+ the PINERC variable, set it to "no". It than takes all
+ address-book and global-address-book entries from these pinerc
+ files and adds the contents of the variable PINE_ADDRESSBOOKS
+ to the list, which defaults to `/etc/addressbook .addressbook'.
+ Then these addressbooks are searched for aliases. All filenames
+ without leading slash are searched in $HOME.
+
+m_palm
+ This module searches the Palm address database using the
+ Palm::PDB and Palm::Address Perl modules from CPAN. It
+ searches in the variable PALM_ADDRESS_DATABASE or if this isn't
+ set in $HOME/.jpilot/AddressDB.pdb.
+
+m_gnomecard
+ This module searches for addresses in your GnomeCard database
+ files. The variable GNOMECARD_FILES is a whitespace separated
+ list of GnomeCard data files. If this variable isn't defined,
+ the module searches in $HOME/.gnome/GnomeCard for the GnomeCard
+ database or at least falls back to $HOME/.gnome/GnomeCard.gcrd.
+ If a filename does not start with a slash, it is prefixed with
+ $HOME/.
+
+m_bbdb
+ This module searches for addresses in your (X)Emacs BBDB (big
+ brother database). It doesn't access ~/.bbdb directly (yet)
+ but calls (x)emacs with a special mode to get the information
+ (so don't expect too much performance in this module). You can
+ configure the EMACS variable to tell this module which emacsen
+ to use. Otherwise it will fall back to emacs or xemacs.
+
+m_ldap
+ This module queries an LDAP server using the Net::LDAP Perl
+ modules from CPAN. It can be configured using an external
+ resource file (for more details please refer to the
+ mutt_ldap_query(1) manual page).
+
+m_wanderlust
+ This module searches for addresses stored in your
+ $WANDERLUST_ADDRESSES (or by default in $HOME/.addresses) file,
+ an addressbook of WanderLust.
+
+m_osx_addressbook
+ This module queries the OS X AddressBook. It is only available
+ on OS X systems.
+
+m_evolution
+ This module queries the Ximian Evolution address book using the
+ evolution-addressbook-export application.
+
+m_vcf
+ This module uses libvformat to search for addresses from the
+ space-separated set of vCard files defined in $VCF_FILES.
+
+
+Feel free to create your own modules to query other kinds of
+databases. m_finger should be a good example of how to do it.
+
+If you create your own modules or have other changes and feel that
+they could be helpful for others, don't hesitate to submit them to me
+for inclusion in later releases.
+
+Finally, to use lbdbq from mutt, add the following line to your
+~/.muttrc:
+
+ set query_command="lbdbq %s"
+
+
+CREDITS
+-------
+
+Most of the really interesting code of this program (namely, the RFC
+822 address parser used by lbdb-fetchaddr) was stolen from Michael
+Elkins' mutt mail user agent. Additional credits go to Brandon Long
+for putting the query functionality into mutt.
+
+Many thanks to the authors of the several modules and extensions:
+- Ross Campbell <rcampbel@us.oracle.com> (m_abook, m_yppasswd)
+- Marc de Courville <marc@courville.org> (m_ldap, mutt_ldap_query)
+- Brendan Cully <brendan@kublai.com> (m_osx_addressbook, m_vcf)
+- Gabor Fleischer <flocsy@mtesz.hu> (m_pine)
+- Rick Frankel <rick@rickster.com> (m_gnomecard)
+- Guido Guenther <agx@sigxcpu.org> (m_evolution)
+- Utz-Uwe Haus <haus@uuhaus.de> (m_bbdb, m_nispasswd)
+- Torsten Jerzembeck <toje@nightingale.ms.sub.org> (m_addr_email)
+- Gergely Nagy <algernon@debian.org> (m_wanderlust)
+- Dave Pearson <davep@davep.org> (m_palm, lbdb.el)
+- Brian Salter-Duke <b_duke@bigpond.net.au> (m_muttalias)
diff --git a/misc/lbdb/doinst.sh b/misc/lbdb/doinst.sh
new file mode 100644
index 0000000000..d2f0159dbd
--- /dev/null
+++ b/misc/lbdb/doinst.sh
@@ -0,0 +1,15 @@
+config() {
+ NEW="$1"
+ OLD="$(dirname $NEW)/$(basename $NEW .new)"
+ # If there's no config file by that name, mv it over:
+ if [ ! -r $OLD ]; then
+ mv $NEW $OLD
+ elif [ "$(cat $OLD | md5sum)" = "$(cat $NEW | md5sum)" ]; then
+ # toss the redundant copy
+ rm $NEW
+ fi
+ # Otherwise, we leave the .new copy for the admin to consider...
+}
+
+config etc/lbdb.rc.new
+config etc/lbdb_ldap.rc.new
diff --git a/misc/lbdb/lbdb.SlackBuild b/misc/lbdb/lbdb.SlackBuild
new file mode 100644
index 0000000000..4b8ed85a4b
--- /dev/null
+++ b/misc/lbdb/lbdb.SlackBuild
@@ -0,0 +1,98 @@
+#!/bin/sh
+
+# Slackware build script for coolkey
+
+# Copyright 2009 Raymond Bailey <bailey@akamai.com>
+# All rights reserved.
+#
+# Redistribution and use of this script, with or without modification, is
+# permitted provided that the following conditions are met:
+#
+# 1. Redistributions of this script must retain the above copyright
+# notice, this list of conditions and the following disclaimer.
+#
+# THIS SOFTWARE IS PROVIDED BY THE AUTHOR ''AS IS'' AND ANY EXPRESS OR IMPLIED
+# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
+# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
+# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
+# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
+# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
+# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+PRGNAM=lbdb
+VERSION=${VERSION:-0.36}
+ARCH=${ARCH:-i486}
+BUILD=${BUILD:-1}
+TAG=${TAG:-_SBo}
+
+CWD=$(pwd)
+TMP=${TMP:-/tmp/SBo}
+PKG=$TMP/package-$PRGNAM
+OUTPUT=${OUTPUT:-/tmp}
+
+if [ "$ARCH" = "i486" ]; then
+ SLKCFLAGS="-O2 -march=i486 -mtune=i686"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "i686" ]; then
+ SLKCFLAGS="-O2 -march=i686 -mtune=i686"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "x86_64" ]; then
+ SLKCFLAGS="-O2 -fPIC"
+ LIBDIRSUFFIX="64"
+fi
+
+set -e # Exit on most errors
+
+rm -rf $PKG
+mkdir -p $TMP $PKG $OUTPUT
+cd $TMP
+rm -rf $PRGNAM-$VERSION
+tar xvf $CWD/$PRGNAM\_$VERSION.tar.gz
+cd $PRGNAM-$VERSION
+chown -R root:root .
+chmod -R u+w,go+r-w,a-s .
+
+CFLAGS="$SLKCFLAGS" \
+CXXFLAGS="$SLKCFLAGS" \
+./configure \
+ --prefix=/usr \
+ --sysconfdir=/etc \
+ --libdir=/usr/lib${LIBDIRSUFFIX}/lbdb \
+ --enable-confdir=/etc \
+ --localstatedir=/var \
+ --mandir=/usr/man \
+ --docdir=/usr/doc/$PRGNAM-$VERSION \
+ --build=$ARCH-slackware-linux
+
+make
+make install_prefix=$PKG install
+
+mv $PKG/etc/lbdb_ldap.rc $PKG/etc/lbdb_ldap.rc.new
+mv $PKG/etc/lbdb.rc $PKG/etc/lbdb.rc.new
+
+( cd $PKG
+ find . | xargs file | grep "executable" | grep ELF | cut -f 1 -d : | \
+ xargs strip --strip-unneeded 2> /dev/null || true
+ find . | xargs file | grep "shared object" | grep ELF | cut -f 1 -d : | \
+ xargs strip --strip-unneeded 2> /dev/null || true
+)
+
+( cd $PKG/usr/man
+ find . -type f -exec gzip -9 {} \;
+ for i in $( find . -type l ) ; do ln -s $( readlink $i ).gz $i.gz ; rm $i ; done
+)
+
+mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION/
+cp -a README $PKG/usr/doc/$PRGNAM-$VERSION
+cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
+cat $CWD/README.Slackware > $PKG/usr/doc/$PRGNAM-$VERSION/README.Slackware
+
+mkdir -p $PKG/install
+cat $CWD/slack-desc > $PKG/install/slack-desc
+cat $CWD/doinst.sh > $PKG/install/doinst.sh
+
+cd $PKG
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
diff --git a/misc/lbdb/lbdb.info b/misc/lbdb/lbdb.info
new file mode 100644
index 0000000000..b5c55b75c1
--- /dev/null
+++ b/misc/lbdb/lbdb.info
@@ -0,0 +1,10 @@
+PRGNAM="lbdb"
+VERSION="0.36"
+HOMEPAGE="http://www.spinnaker.de/lbdb/"
+DOWNLOAD="http://www.spinnaker.de/debian/lbdb_0.36.tar.gz"
+MD5SUM="12d9bf7ef3ef526f0d82604a8f9add9c"
+DOWNLOAD_x86_64=""
+MD5SUM_x86_64=""
+MAINTAINER="Andy Bailey"
+EMAIL="GooseYArd@gmail.com"
+APPROVED="dsomero"
diff --git a/misc/lbdb/slack-desc b/misc/lbdb/slack-desc
new file mode 100644
index 0000000000..ffe28ba726
--- /dev/null
+++ b/misc/lbdb/slack-desc
@@ -0,0 +1,19 @@
+# HOW TO EDIT THIS FILE:
+# The "handy ruler" below makes it easier to edit a package description. Line
+# up the first '|' above the ':' following the base package name, and the '|'
+# on the right side marks the last column you can put a character in. You must
+# make exactly 11 lines for the formatting to be correct. It's also
+# customary to leave one space after the ':'.
+
+ |-----handy-ruler---------------------------------------------------|
+lbdb: lbdb (The Little Brother's Database)
+lbdb:
+lbdb: This package consists of a set of small tools, which collect mail
+lbdb: addresses from several sources and offer these addresses to the
+lbdb: mutt external query feature.
+lbdb:
+lbdb:
+lbdb:
+lbdb:
+lbdb:
+lbdb: