$Id: README,v 1.5 2001/10/27 15:17:28 joern Exp $
NAME
JaM - Just a Mailer
SYNOPSIS
bin/jam.pl
DESCRIPTION
The working title for this piece of software is:
"Highly Secure Personal Free Highspeed Archiving
Gtk Perl Mailer Against Micro$oftism"
which describes its purpose in a nutshell.
But, primarily, it is: Just a Mailer. ;)
It is designed exactly for Unix users like me. If other
Unix users at least like reading mail my way, they may
like this program, too ;)
JaM handles big mail folders, has a powerful filter engine
and a lean and quick Gtk+ GUI. It uses a MySQL database
to store its data, which makes JaM capable of handling
huge mail folders very quickly.
If you're using Netscape Messenger and are fed up with its
bugs, JaM is for you, because it can import your mail from
the Netscape nsmail folder.
Generally JaM is not designed to have any feature a mail
client possibly may have!
PREREQUISITES
1. An up and running MySQL database
Currently only MySQL is supported as the storage backend.
Attaching other RDMBS is possible but not currently realized.
2. Gtk+ version 1.2 or better
JaM uses the Gtk+ toolkit for its gui.
3. html2ps
html2ps is used for printing mails.
4. A bunch of Perl modules:
DBI 1.20
DBD::mysql
Date::Manip
Gtk
Gtk::HTML
MIME::Entity
MIME::Parser
MIME::Types
MIME::WordDecoder
Net::POP3
Net::SMTP
Storable
Unicode::String
I recommend using the powerfull CPAN module to install
these modules automatically. JaM ships with a CPAN Bundle
file which contains the modules listed above, so installation
of these may be as easy as to write:
# perl -MCPAN -Ilib -e "install Bundle::JaM"
after extracting the JaM archive and changing to the created
installation directory.
Unfortunately the DBD::MySQL CPAN distribution is currently
experimental, so the Bundle has to point explicitely to
the stable Msql-Mysql-modules distribution, what makes CPAN
automatic version check fail. If you repeatedly install the
JaM Bundle CPAN will always install DBD::MySQL, although it
is installed already. You can interrupt via Ctrl+C when the
installer asks you which drivers should be installed.
Also installation of Gtk::HTML isn't easy, because it needs
a lot of installed libraries. I know, that makes satisfying JaM's
prerequisites a really hard task. But such is life, folks ;)
SuSE 7.2 provides all needed libraries, just struggle arround
with YaST a bit, if you're a lucky SuSE 7.2 owner ;)
JaM will crash unpredictable if any of the needed modules are
missing. There is no startup check routine, because some modules
are loaded at runtime when needed.
INSTALLATION
There is no installation program. Just extract the archive
wherever you want, eg. in /usr/local, and set a symlink to
the version you want to use (the JaM archive creates a directory
which includes the version number):
# cd /usr/local
# tar xfz /tmp/JaM-x.xx.tar.gz
# ln -s JaM-x.xx/ JaM
Install needed Perl modules, if not already done:
# cd JaM
# perl -MCPAN -Ilib -e "install Bundle::JaM"
Now you can start JaM using:
/usr/local/JaM/bin/jam.pl
You can set a symlink inside a common bin directory. JaM find
its installation directory automatically.
# cd /usr/local/bin
# ln -s /usr/local/JaM/bin/jam.pl .
On first startup JaM recognizes, that the MySQL database needs to
be initialized. It asks you some questions and will create
the database for you. A help text will guide you through this.
It then creates a .JaMrc file inside the users home directory, which
contains the MySQL connection information. All other files of JaM
did not to be writable by the user, so you can install JaM in a
read only system area. Multiuser access is no problem at all.
You also may set the JAMRC environment variable pointing to another
.JaMrc file. This way multiple database instances per user are
supported.
UPDATING TO NEWER VERSION
Updating is as easy as installing. Just extract the archive where
you installed JaM and recreate the symlink, so that the new
directory will be used.
On next startup JaM will check your database schema version. If
the schema needs to be updated, JaM suggests you to make a backup
of your MySQL database. Then it can update the schema automatically.
Update across several versions of JaM is supported.
AUTHOR
Joern Reder <joern@zyn.de>
COPYRIGHT
Copyright (C) 2001 by Joern Reder, All Rights Reserved.
This program is free software; you can redistribute it and/or
modify it under the same terms as Perl itself.
SEE ALSO
perl(1).