head	1.9;
access;
symbols
	rc-02:1.7
	rc-01:1.5
	internal-04:1.3;
locks; strict;
comment	@# @;


1.9
date	2000.09.08.01.38.13;	author ms;	state dead;
branches;
next	1.8;

1.8
date	2000.06.19.00.46.56;	author goetz;	state Exp;
branches;
next	1.7;

1.7
date	2000.06.01.03.36.36;	author goetz;	state Exp;
branches;
next	1.6;

1.6
date	2000.05.25.00.35.10;	author goetz;	state Exp;
branches;
next	1.5;

1.5
date	2000.05.25.00.03.56;	author goetz;	state Exp;
branches;
next	1.4;

1.4
date	2000.05.17.02.36.58;	author goetz;	state Exp;
branches;
next	1.3;

1.3
date	2000.05.06.04.00.36;	author goetz;	state Exp;
branches;
next	1.2;

1.2
date	2000.05.05.04.30.21;	author goetz;	state Exp;
branches;
next	1.1;

1.1
date	2000.05.02.23.44.13;	author goetz;	state Exp;
branches;
next	;


desc
@@


1.9
log
@Moved INSTALL to eyebrowse/docs
@
text
@Installing EYEBROWSE
--------------------

Follow these steps to install eyebrowse on your system.  

1.  Download and install into your java class path the following packages: 
  * The Java Mail framework
    (http://www.javasoft.com/products/javamail/)
  * The Java Activation framework
    (http://java.sun.com/beans/glasgow/jaf.html)
  * The MM MySQL drivers
    (http://www.worldserver.com/mm.mysql/)
  * The GNU regexp package
    (http://www.cacas.org/~wes/java/index.html)
  * The Sun 1.1 version of the collections package 
    (http://java.sun.com/beans/infobus/)
  * The Lucene text-search engine library
    (http://lucene.sourceforge.net)

Note: JavaMail does not run properly under Kaffe, so if you are using Kaffe, 
you'll want to switch to a more reliable JVM.  

2.  Unpack the eyebrowse files, and load the eyebrowse classes into
your java class path.

3.  (optional) create an account for the eyebrowse application.  

3.  Set up a mysql server (http://www.mysql.org/), if you don't have
one already set up.  Note: Eyebrowse requires version 3.22 or later of
mysql.  

3a. Create a mysql database for eyebrowse, and grant permissions on it
    to the eyebrowse user: 
    mysql> CREATE DATABASE eyebrowse;
    mysql> GRANT ALL on eyebrowse.* to eyebrowse@@localhost;
    mysql> FLUSH PRIVILEGES;

3b. Create the necessary mysql tables
    mysql eyebrowse < $EYEBROWSE_ROOT/src/sql/eyebrowse-create.sql

4.  Set up Apache and JServ (or your favorite servlet engine)

4a. Edit the servlet engine properties and map the servlets as
    described in $EYEBROWSE_ROOT/servlet.properties 

5.  Get WebMacro and install and configure it for use with your servlet
    engine (http://www.webmacro.org)

5a. Edit the WebMacro.properties file to look for templates in the
    $EYEBROWSE_ROOT/src/webmacro directory.  Make sure this properties file
    is in your path.  

6.  Edit the eyebrowse.properties file to reflect the name of the
    database and the name of the eyebrowse user.  Make sure that this
    properties file is in your path.


Then fire up your servlet engine and you should be ready to go.  

See the document USING_EYEBROWSE for instructions on how to set up and 
administer eyebrowse lists.  


@


1.8
log
@Add note about Lucene; note about Kaffe
@
text
@@


1.7
log
@Move user-mode programs to com.quiotix.eyebrowse.programs package, add
a script to front-end these; rename interface Index to IIndex; minor doc tweaks
Submitted by:	Brian Goetz
@
text
@d17 5
@


1.6
log
@*** empty log message ***
@
text
@d55 2
a56 59

Using Eyebrowse
---------------

You can use the following command line tools to insert an mbox file
into the system:

To add a new list to eyebrowse: 
% java com.quiotix.eyebrowse.AddList list-name list-description

If you want the list to support text indexing (searching), also do this: 
% java com.quiotix.eyebrowse.AddIndex list-name index-directory

where index-directory is a directory the indexer can use to store the text
index information.  

To add a new mbox file to a list (files are added to the list in
chronological order; you could have one mbox per list, or you might
have one mbox per month.  Only the last mbox file in a list is
considered active at any time.)
% java com.quiotix.eyebrowse.AddListFile list-name file-path

To update the database (add any new messages that have been received
since the last update):
% java com.quiotix.eyebrowse.UpdateList list-name

If the list is indexed, also do this to update the text search index: 
% java com.quiotix.eyebrowse.UpdateIndex list-name

You can update all lists and indices at once by: 
% java com.quiotix.eyebrowse.Update

The last (update) commands would likely be run periodically by a cron
job.


Important note -- File locking.  To prevent conflicts like the sendmail
programs trying to add new content to the end of a mailbox file while
UpdateList is reading it, you'll need to lock the mailbox files before
you run UpdateList / Update, or ensure that sendmail is not running at
the same time you'll be doing your eyebrowse updates.  Unfortunately,
there's no portable Java way to do file locking.  

We provide a perl script to invoke UpdateList safely (UpdateIndex is not
susceptible to file locking problems).  You can invoke it as follows:
% perl safeupdate.pl list-name
% (optional) java com.quiotix.eyebrowse.UpdateIndex list-name
and it will run UpdateList wrapped with the appropriate locks.  

The perl locking doesn't work for mail files mounted across NFS, so in
that situation, you will have to fall back on the more primitive
"dotfile locking".  The widely-used procmail package contains a
program for locking mailbox files, which can be used for this purpose.
You could invoke it as follows (which would lock all mail files, update
all the lists, and unlock the files): 

  lockfile mail-dir/*.mbox 
  java com.quiotix.eyebrowse.Update 
  rm -f mail-dir/*.mbox.lock
@


1.5
log
@Add support for file locking, including GetLists and GetListFile programs
Submitted by:	Brian Goetz
@
text
@d55 4
d87 2
a88 1
The last commands would likely be run periodically by a cron job.  
d91 1
a91 1
Important -- File Locking.  To prevent conflicts like the sendmail
d100 3
a102 1
  safeupdate.pl list-name
d105 5
a109 4
that situation, you will have to fall back on "dot-locking".  The
widely-used procmail package contains a program for locking mailbox
files, which can be used for this purpose.  You could invoke it as
follows:
d114 1
@


1.4
log
@Add themability -- get template names from the properties file.
Document file locking issues.  Create antfile.
Submitted by:	Brian Goetz
@
text
@d91 8
a98 1
there's no portable Java way to do file locking.  However, the
@


1.3
log
@*** empty log message ***
@
text
@d2 1
d16 1
d30 1
a30 1
    mysql> GRANT ALL on eyebrowse.* to eyebrowse;
d45 2
a46 1
    $EYEBROWSE_ROOT/src/webmacro directory
d49 2
a50 2
database and the name of the eyebrowse user.  Make sure that this
properties file is in your path.
d64 3
d77 1
a77 1
If the list is indexed, also do this: 
d84 15
@


1.2
log
@Migrate logic from UpdateList to ListMaint; create Update program
Submitted by:	Brian Goetz
@
text
@d74 4
a77 1
The last two commands would likely be run periodically by a cron job.  
@


1.1
log
@Installation notes
@
text
@d22 2
a23 1
one already set up.  
@

