2. Component installation

2.1. Preparations

You have two options

I recommend using Bruce Guenter's rpm releases, since they are well patched, and its what I used for building my systems.

2.1.1. Get source rpms

You will need:

For Courier-imap you must build the source rpm from the tar file (instructions will follow).

2.1.2. Get binary rpms

Qmail does not come in binary form. Such packages are explicitly disallowed by the author of Qmail, and frustrating as it may be, I understand his reasoning.

Courier-imap does not come in binary form, unless you want to use the one I built. If you want mine, visit http://www.clearrivertech.com/linux/HOWTO/supportfiles/.

VMailMgr does not come in binary form that supports Courier-imap, unless you want to use the one I built. If you want mine, email me, and I will send it.

* For qmail, you must always compile yourself due to the license restrictions. ** For Courier-imap you must build the binary rpm from the tar file (instructions will follow) or email me for my binary rpm.

2.1.3. Get deb packages

There are multiple locations for qmail and vmailmgr deb packages. Courier-imap is part of the normal debian applications.

You can get them in the following locations:

The packages by Hon are current and even include support for courier-imap, which was a great help for me, so I am going to use a combination of them for my examples. You can of course choose the ones you want for yourself, but your results may vary.

You will need:

2.1.4. Get tarred sources (for non-RPM users)

If your system does not have, or you do not use RPMS, you can install from source.

(*) There may be minor differences in these instructions due to the use of the standard
Qmail package. Please review the documentation for Qmail and VMailMgr if any of
the files deviates from my instructions.

2.2. Install support packages

2.2.1. Install with RPMS

2.2.1.1. Compiling SRC.RPM's

Simply run the following command for each package rpm --rebuild <package.src.rpm> -Example-

  rpm --rebuild ucspi-tcp-0.88-1.src.rpm
  rpm --rebuild ucspi-unix-0.34-1.src.rpm  
  rpm --rebuild daemontools-0.70-3.src.rpm  
  rpm --rebuild supervise-scripts-3.3-1.src.rpm  
You may get dependancy errors. If you do then install the package that is being requested using the steps below. This may happen when you compile daemontools before installing ucspi-tcp.

2.2.1.2. Installing RPM's

If you compiled the source rpms, the binaries will be located in /usr/src/redhat/RPMS/i386/ or something similar.

Simply run the following command for each package rpm -ivh <location>/<package.i386.rpm>

-Example-

  rpm -ivh /usr/src/redhat/RPMS/i386/ucspi-tcp-0.88-1.i386.rpm
  rpm -ivh /usr/src/redhat/RPMS/i386/ucspi-unix-0.34-1.i386.rpm
  rpm -ivh /usr/src/redhat/RPMS/i386/daemontools-0.70-3.i386.rpm
  rpm -ivh /usr/src/redhat/RPMS/i386/supervise-scripts-3.3-1.i386.rpm

2.2.2. Install with debs

Run the following commands for each package (as root) dpkg -i <package.deb>

-Example-

  dpkg -i ucspi-tcp_0.88-3_i386.deb
  dpkg -i ucspi-unix_0.34-1_i386.deb
  dpkg -i daemontools_0.70-1_i386.deb
  dpkg -i supervise-scripts_3.3-6_i386.deb

2.2.3. Install with source

Run the following commands for each package (As non-root user) tar zxf <package.tar.gz> cd <newly created dir> ./configure make (As root) make setup check (for ucspi-tcp and daemontools) or make install (for ucspi-unix and supervise-scripts)

-Example-

  (As non-root user)
  tar zxf supervise-scripts-2.4.tar.gz
  cd supervise-scripts-2.4
  ./configure
  make
  (As root)
  make setup check or  make install

2.3. Install Qmail

2.3.1. Install with RPMS

2.3.1.1. Compiling SRC.RPM's

After installing the support packages, Simply run the following command: rpm --rebuild <package.src.rpm>

-Example-

  rpm --rebuild qmail-1.03+patches-18.src.rpm

2.3.1.2. Installing RPM's

After compiling the source rpms, the binaries will be located in /usr/src/redhat/RPMS/i386/ or something similar.

Simply run the following command for the qmail package rpm -ivh <location>/<package.i386.rpm>

-Example-

  rpm -ivh /usr/src/redhat/RPMS/i386/qmail-1.03+patches-18.i386.rpm

* note start * - Remove sendmail and any dependant applications prior to installing Qmail - by running the following command for each package - rpm -e <packagename>* - - On my system I had to remove sendmail, so I typed - rpm -e sendmail * note end *

2.3.2. Install with debs

Run the following commands for each package (as root) dpkg -i <package.deb>

-Example-

  dpkg -i qmail_1.03-17_i386.deb

2.3.3. Install with source

Run the following command (As non-root user) tar zxf <package.tar.gz> cd <newly created dir> (Now read the INSTALL file and follow the steps to install Qmail) -Example-

  (As non-root user)
  tar zxf release-18.tar.gz
  cd release-1.03
  vi INSTALL (Read and follow steps)

2.4. Install Courier-imap

2.4.1. Install with RPMS

2.4.1.1. Compiling SRC.RPM's

Build the courier-imap rpms from the tar file rpm -ta courier-imap-1.4.3.tar.gz

* note start * - This errors out if you compile as root, but if your not root you - wont have permissions to /usr/src/redhat. You will want to build as a - non-root user, so create a ".rpmmacros" file (for rpm v3 and later) in - your home directory containing the line "%_topdir /path/to/home/redhat". - Then create your own "redhat" directory containing all the subdirs that - /usr/src/redhat contains. - You should never build RPMs as root unless you have to. * note end *

* I will mention again, that I have built the binaries, and you can get them at * * http://www.clearrivertech.com/linux/HOWTO/supportfiles/. *

2.4.1.2. Installing RPM's

After compiling the source rpms, the binary will be located in /usr/src/redhat/RPMS/i386/ or something similar.

Simply run the following command for each package rpm -ivh <location>/<package.i386.rpm>

-Example-

  rpm -ivh /usr/src/redhat/RPMS/i386/courier-imap-1.4.3.i386.rpm

2.4.2. Install with debs

Run the following commands for each package (as root) apt-get <package.deb>

-Example-

  apt-get courier-imap

2.4.3. Install with source

Run the following command (As non-root user) tar zxf <package.tar.gz> cd <newly created dir> ./configure make (As root) make install

-Example-

  (As non-root user)
  tar zxf courier-imap-1.4.3.tar.gz
  cd courier-imap-1.4.3
  ./configure
  make
  (As root)
  make install

2.5. Install VMailMgr

2.5.1. Install with RPMS

2.5.1.1. Compiling SRC.RPM's

There is a problem compliling VMailMGR on RedHat 7.x distros (and maybe other new ones as well). To solve this you must edit the source files These files need to have an #include <string.h> added

lib/misc/exec.cc
lib/misc/keystrlist.cc
lib/misc/strlist.cc
lib/mystring/append.cc
authenticate/authvmailmgr.cc
The following needs to have an #include <stdlib.h>:
authenticate/vauthenticate.cc
authenticate/checkvpw.cc
The copies I have on http://www.clearrivertech.com/linux/HOWTO/supportfiles/rh72/ are already patched.

Simply run the following command rpm --rebuild <package.src.rpm> -Example-

  rpm --rebuild vmailmgr-0.96.9-1.src.rpm  

2.5.1.2. Installing RPM's

If you compiled the source rpm, the binaries will be located in /usr/src/redhat/RPMS/i386/ or something similar.

Simply run the following command for each package rpm -ivh <location>/<package.i386.rpm>

-Example-

  rpm -ivh /usr/src/redhat/RPMS/i386/vmailmgr-0.96.9-1.i386.rpm
  rpm -ivh /usr/src/redhat/RPMS/i386/VMailMgr-daemon-0.96.6-1.i386.rpm
  rpm -ivh /usr/src/redhat/RPMS/i386/vmailmgr-courier-imap-0.96.9-2.i386.rpm

2.5.2. Install with debs

Run the following commands for each package (as root) dpkg -i <package.deb>

-Example-

  dpkg -i vmailmgr_0.96.9-3_i386.deb

2.5.3. Install with source

There is a problem compliling VMailMGR on RedHat 7.x distros (and maybe other new ones as well). To solve this you must edit the source files These files need to have an #include <string.h> added

lib/misc/exec.cc
lib/misc/keystrlist.cc
lib/misc/strlist.cc
lib/mystring/append.cc
authenticate/authvmailmgr.cc
The following needs to have an #include <stdlib.h>:
authenticate/vauthenticate.cc
authenticate/checkvpw.cc
The copies I have on http://www.clearrivertech.com/linux/HOWTO/supportfiles/rh72/ are already patched.

Run the following commands (As non-root user) tar zxf <package.tar.gz> cd <newly created dir> ./configure make (As root) make install -Example-

  (As non-root user)
  tar zxf vmailmgr-0.96.9.tar.gz
  cd vmailmgr-0.96.9
  ./configure
  make
  (As root)
  make setup check or  make install
That should do it.