Installing Mailman 2.1 on Mac OS X Server (Jaguar)

Create a new user called "mailman" "uid=1200".
Create a new group called "mailman" gid=1200.

Create an installation directory in "/usr/local/mailman".

cd /usr/local/mailman
curl -O http://unc.dl.sourceforge.net/sourceforge/mailman/mailman-2.1.tgz
gnutar -xvzf mailman-2.1.tgz

cd /
sudo chgrp mailman /usr/local/mailman
sudo chmod a+rx,g+ws /usr/local/mailman

cd /usr/local/mailman/mailman-2.1
sudo ./configure --prefix=/usr/local/mailman --with-cgi-gid=www --with-mail-gid=1


sudo make install
cd ..
sudo bin/check_perms -f
sudo bin/check_perms -f

# % cd /etc/httpd
# % open -e httpd.conf
#
#
# Find the section where ScriptAliases are setup, and add the following line:
#
# ScriptAlias /mailman/ "/usr/local/mailman/cgi-bin/"
#
# Find the section where Aliases are setup, and add the following line:
#
# Alias /pipermail/ "/usr/local/mailman/archives/public/"

# % cp /usr/local/mailman/icons/mailman.jpg /usr/share/httpd/icons/
# % cp /usr/local/mailman/icons/PythonPowered.png /usr/share/httpd/icons/
# % cp /usr/local/mailman/icons/gnu-head-tiny.jpg /usr/share/httpd/icons/
# % cp /usr/local/mailman/icons/mailman-large.jpg /usr/share/httpd/icons/

# % sudo apachectl graceful

cd /usr/local/mailman/cron/
crontab -u mailman crontab.in

cd /usr/local/mailman/Mailman
open -e mm_cfg.py

# Add the following lines to the end of the file:

DEFAULT_EMAIL_HOST = 'mail.domain.net'
DEFAULT_URL_HOST = 'www.domain.net'

cd ..
bin/mailmanctl start
bin/mmsitepass

Add the following line to /etc/hostconfig

MAILMAN = -YES-

download startup files:

http://www.afp548.com/Software/MailmanStartup.tar.gz

Place those files in /Library/StartupItems

Visit the url:     http://my.dom.ain/mailman/create

Exim configure file

add to main config section:

MAILMAN_HOME=/usr/local/mailman
MAILMAN_WRAP=MAILMAN_HOME/mail/mailman

MAILMAN_USER=mailman
MAILMAN_GROUP=1

add to routers (near the beginning):

mailman_router:
driver = accept
require_files = MAILMAN_HOME/lists/$local_part/config.pck
local_part_suffix_optional
local_part_suffix = -bounces : -bounces+* : \
-confirm+* : -join : -leave : \
-owner : -request : -admin
transport = mailman_transport

add to transports:

mailman_transport:
driver = pipe
command = MAILMAN_WRAP \
'${if def:local_part_suffix \
{${sg{$local_part_suffix}{-(\\w+)(\\+.*)?}{\$1}}} \
{post}}' \
$local_part
current_directory = MAILMAN_HOME
home_directory = MAILMAN_HOME
user = MAILMAN_USER
group = MAILMAN_GROUP