This document describes the steps which are necessary to
install and use Mutt-ng


Supported platforms:
====================

Mutt-ng should run under the following platforms:

AIX, BSDI, Convex, Data General Unix (DG/UX), Digital Unix (OSF/1),
DYNIX/ptx, FreeBSD, HP-UX, IRIX, Linux, Atari MiNT, MkLinux, NetBSD,
OpenBSD, QNX, SCO Unix 3.2v4/5, Solaris, SunOS, Ultrix, UnixWare,
MacOSX


Requirements:
=============

1. ANSI C compilter. The GNU c compiler would be a good choice

2. A SysV compatible semigraphic library. 
   Mutt-ng supports:
   - GNU ncurses , ftp://ftp.gnu.org/gnu/ncurses/
   - S-Lang, ftp://space.mit.edu/pub/davis/slang/

3. An implementation of the iconv API for character set
  conversions. This one is recommend: 
  http://www.gnu.org/software/libiconv/


Installation:
=============

1. Installing Mutt-ng is very easy. Just use tar and gzip/bzip2.
   For example type: `tar xvfz mutt-ng-20050515.tar.gz'.
   If you have obtained the distribution from
   the SVN (subversion)  repository, run the `autogen.sh' script with the 
   same command line parameters like it is described in doc/devel-notes.txt
   
2. The next step is to call `configure' to configure your installation
   depending on your system.
   In most cases, configure will automatically determine everything it
   needs to know in order to compile.  However, there are a few options
   to `configure` to help it out, or change the default behavior:

    Configure options:
    ==================

    --prefix=DIR
        install Mutt-ng in DIR instead of /usr/local

    --with-curses=DIR
        use the curses lib in DIR/lib.  If you have ncurses, `configure'
        will automatically look in /usr/include/ncurses for the include
        files.

    --with-slang[=DIR]
        use the S-Lang library instead of ncurses.  This library seems to
        work better for some people because it is less picky about proper
        termcap entries than ncurses.

    This are just a few configure options to get a complete list type:
    `configure --help'

3. Once `configure' has completed, simply type `make install.'

Mutt-ng should compile cleanly (without errors) and you should end up with a
binary called `muttng.'  If you get errors about undefined symbols like
A_NORMAL or KEY_MIN, then you probably don't have a SysV compliant curses
library.  You should install either ncurses or S-Lang (see above), and then
run the `configure' script again.
Depending on the features you included via configure you can get similliar
errors from other libraries that are missing.


Iconv character set support
=====================

If you decide to use your system's iconv implementation, you may
need to tell Mutt-ng about implementation-defined names for some
character sets.  Sample configuration files for various systems can
be found in the directory contrib/iconv/ in this source
distribution, and will be installed in the samples/iconv directory
as part of Mutt-ng's documentation.

In order to use these sample configuration files, just put a line
like

     source /usr/local/doc/muttng/samples/iconv/iconv.osf1-4.0d.rc

into your system's global Muttngrc, which normally resides in /etc or
/usr/local/etc.

If you really want to, you can configure Mutt-ng --disable-iconv, but
there will then be no character set conversion.


Platform Notes
==============

All platforms

There is a bug in most (if not all) S-Lang versions which
prevents the Meta key from working with Mutt-ng.  A patch can
be found in the file contrib/patch.slang-1.2.2.keypad.1 in
this Mutt-ng distribution.

- Solaris 2.4

The system regcomp() and regexec() routines are very badly
broken.  This should be automatically detected by the
configure script.  If not, use the --with-regex switch when
configuring Mutt-ng.

We are also hearing reports that Solaris 2.4's NLS libraries
dump core with Mutt-ng when using a locale different from "C".
Use the --with-included-gettext configuration switch if you
experience this problem.

Color does not work right with Solaris curses.  You will
have to compile with either ncurses or slang to get working
color support.

- Solaris 2.6

There are reports that Mutt-ng behaves strangely when linked with
the system regexp library.  Please use the --with-regex switch
when configuring on this platform.

For the real fix, applying Sun patches # 105490-05 (linker
patch) and # 105210-17 (libc and malloc patch) from
sunsolve.sun.com has been reported to stop these problems
from occuring.

- Linux

On recent Linux systems, flock() and fcntl() locks don't mix.  If
you use the --enable-flock switch on such systems, be sure to
give the --disable-fcntl argument as well.


Mo Mai 23 19:52:22 CEST 2005 Nico 'nion' Golde <nion@muttng.org>

 * updated/rewrote document
