123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210 |
- 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)
|