README.Slackware 8.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210
  1. The Little Brother's Database
  2. Roland Rosenfeld <roland@spinnaker.de> (current maintainer)
  3. Thomas Roessler <roessler@guug.de> (initial author)
  4. This package was inspired by the Big Brother Database package
  5. available for various Emacs mailers, and by Brandon Long's "external
  6. query" patch for the mutt mail user agent (Note that this patch has
  7. been incorporated into the main-line mutt versions as of mutt 0.93.)
  8. The package doesn't use any formal database libraries or languages,
  9. although it should be quite easy to extend it to use, e.g., an
  10. installed PostgreSQL server as it's backend.
  11. For querying the Little Brother, just type "lbdbq <something>". lbdbq
  12. will now attempt to invoke various modules to gather information about
  13. persons matching "<something>". E.g., it may look at a list of
  14. addresses from which you have received mail, it may look at YP maps,
  15. or it may try to finger <something>@<various hosts>.
  16. The behavior is configurable: Upon startup, lbdbq will source the
  17. shell scripts
  18. /usr/local/etc/lbdb.rc (or where your @sysconfdir@ points to)
  19. $HOME/.lbdbrc
  20. $HOME/.lbdb/lbdbrc
  21. $HOME/.lbdb/rc
  22. if they exist.
  23. They can be used to set the following global variables:
  24. - MODULES_PATH: Where lbdbq should look for modules
  25. - METHODS: What modules to use.
  26. - SORT_OUTPUT: Set this to "false" or "no" and lbdbq won't sort the
  27. addresses but returns them in reverse order (which means that the
  28. most recent address in m_inmail database is first). If you set this
  29. to "name", lbdbq sorts the output by real name. If you set this to
  30. "comment", it sort the output by the comment (for example the date
  31. in m_inmail). If you set this to "address", lbdbq sorts the output
  32. by addresses (that's the default).
  33. Note that there _are_ defaults, so you should most probably modify
  34. these variables using constructs like this:
  35. MODULES_PATH="MODULES_PATH $HOME/lbdb_modules"
  36. Additionally, modules may have configuration variables of their own.
  37. Currently the following modules are supplied with lbdb:
  38. m_finger
  39. This module will use finger to find out something more about a
  40. person. The list of hosts do be asked is configurable; use the
  41. M_FINGER_HOSTS variable. Note that "localhost" will mean an
  42. invocation of your local finger(1) binary, and should thus work
  43. even if you don't provide the finger service to the network.
  44. m_finger tries to find out the machines mail domain name in
  45. /etc/mailname, by parsing a sendmail.cf file (if it finds one)
  46. and by reading /etc/hostname and /etc/HOSTNAME.
  47. m_inmail
  48. This module will look up user name fragments in a list of mail
  49. addresses created by lbdb-fetchaddr(1).
  50. m_passwd
  51. This module searches for matching entries in your local
  52. /etc/passwd file. It evaluates the local machine mail domain in
  53. the same way m_finger does. If you set PASSWD_IGNORESYS=true,
  54. this module ignores all system accounts and only finds UIDs
  55. between 1000 and 29999 (all other UIDs are reserved on a Debian
  56. system).
  57. m_yppasswd
  58. This module searches for matching entries in your NIS password
  59. file using the command "ypcat passwd".
  60. m_nispasswd
  61. This module searches for matching entries in the NIS+ password
  62. database using the command ``niscat passwd.org_dir''.
  63. m_getent
  64. This module searches for matching entries in whatever password
  65. database is configured using the command ``getent passwd''.
  66. m_pgp2, m_pgp5, m_gpg
  67. These modules scan your PGP 2.*, PGP 5.* or GnuPG public key
  68. ring for data. They use the programs pgp(1), pgpk(1), or gpg(1)
  69. to get the data.
  70. m_fido
  71. This module searches your Fido nodelist, stored in
  72. $HOME/.lbdb/nodelist created by nodelist2lbdb(1).
  73. m_abook
  74. This module uses the program abook
  75. (http://www.linuxstart.com/~jheinonen/abook/), a text based
  76. address book application to search for addresses. You can
  77. define multiple abook address books by setting the variable
  78. ABOOK_FILES to a space separated list.
  79. m_addr_email
  80. This module uses addr-email from the addressbook
  81. (http://red.roses.de/~clemens/addressbook/) Tk program to
  82. search for addresses.
  83. m_muttalias
  84. This module searches the variable MUTTALIAS_FILES (a space
  85. separated list) of files in MUTT_DIRECTORY that contain mutt
  86. aliases. File names without leading slash will have
  87. MUTT_DIRECTORY (defaults to $HOME/.mutt or $HOME, if
  88. $HOME/.mutt does not exist) prepended before the file name.
  89. Absolute file names (beginning with /) will be taken direct.
  90. m_pine
  91. This module searches pine(1) addressbook files for
  92. aliases. To realize this it first inspects the variable PINERC.
  93. If it isn't set, the default `/etc/pine.conf
  94. /etc/pine.conf.fixed .pinerc' is used. To suppress inspecting
  95. the PINERC variable, set it to "no". It than takes all
  96. address-book and global-address-book entries from these pinerc
  97. files and adds the contents of the variable PINE_ADDRESSBOOKS
  98. to the list, which defaults to `/etc/addressbook .addressbook'.
  99. Then these addressbooks are searched for aliases. All filenames
  100. without leading slash are searched in $HOME.
  101. m_palm
  102. This module searches the Palm address database using the
  103. Palm::PDB and Palm::Address Perl modules from CPAN. It
  104. searches in the variable PALM_ADDRESS_DATABASE or if this isn't
  105. set in $HOME/.jpilot/AddressDB.pdb.
  106. m_gnomecard
  107. This module searches for addresses in your GnomeCard database
  108. files. The variable GNOMECARD_FILES is a whitespace separated
  109. list of GnomeCard data files. If this variable isn't defined,
  110. the module searches in $HOME/.gnome/GnomeCard for the GnomeCard
  111. database or at least falls back to $HOME/.gnome/GnomeCard.gcrd.
  112. If a filename does not start with a slash, it is prefixed with
  113. $HOME/.
  114. m_bbdb
  115. This module searches for addresses in your (X)Emacs BBDB (big
  116. brother database). It doesn't access ~/.bbdb directly (yet)
  117. but calls (x)emacs with a special mode to get the information
  118. (so don't expect too much performance in this module). You can
  119. configure the EMACS variable to tell this module which emacsen
  120. to use. Otherwise it will fall back to emacs or xemacs.
  121. m_ldap
  122. This module queries an LDAP server using the Net::LDAP Perl
  123. modules from CPAN. It can be configured using an external
  124. resource file (for more details please refer to the
  125. mutt_ldap_query(1) manual page).
  126. m_wanderlust
  127. This module searches for addresses stored in your
  128. $WANDERLUST_ADDRESSES (or by default in $HOME/.addresses) file,
  129. an addressbook of WanderLust.
  130. m_osx_addressbook
  131. This module queries the OS X AddressBook. It is only available
  132. on OS X systems.
  133. m_evolution
  134. This module queries the Ximian Evolution address book using the
  135. evolution-addressbook-export application.
  136. m_vcf
  137. This module uses libvformat to search for addresses from the
  138. space-separated set of vCard files defined in $VCF_FILES.
  139. Feel free to create your own modules to query other kinds of
  140. databases. m_finger should be a good example of how to do it.
  141. If you create your own modules or have other changes and feel that
  142. they could be helpful for others, don't hesitate to submit them to me
  143. for inclusion in later releases.
  144. Finally, to use lbdbq from mutt, add the following line to your
  145. ~/.muttrc:
  146. set query_command="lbdbq %s"
  147. CREDITS
  148. -------
  149. Most of the really interesting code of this program (namely, the RFC
  150. 822 address parser used by lbdb-fetchaddr) was stolen from Michael
  151. Elkins' mutt mail user agent. Additional credits go to Brandon Long
  152. for putting the query functionality into mutt.
  153. Many thanks to the authors of the several modules and extensions:
  154. - Ross Campbell <rcampbel@us.oracle.com> (m_abook, m_yppasswd)
  155. - Marc de Courville <marc@courville.org> (m_ldap, mutt_ldap_query)
  156. - Brendan Cully <brendan@kublai.com> (m_osx_addressbook, m_vcf)
  157. - Gabor Fleischer <flocsy@mtesz.hu> (m_pine)
  158. - Rick Frankel <rick@rickster.com> (m_gnomecard)
  159. - Guido Guenther <agx@sigxcpu.org> (m_evolution)
  160. - Utz-Uwe Haus <haus@uuhaus.de> (m_bbdb, m_nispasswd)
  161. - Torsten Jerzembeck <toje@nightingale.ms.sub.org> (m_addr_email)
  162. - Gergely Nagy <algernon@debian.org> (m_wanderlust)
  163. - Dave Pearson <davep@davep.org> (m_palm, lbdb.el)
  164. - Brian Salter-Duke <b_duke@bigpond.net.au> (m_muttalias)