15.3 MacOSX issues

Much of the following is no longer applicable to more recent versions of MacOSX. See the FAQ at http://wiki.list.org/x/O4A9 for links to more recent information.

Many people run Mailman on MacOSX. Here are some pointers that have been collected on getting Mailman to run on MacOSX.

Terry Allen provides the following detailed instructions on running Mailman on the 'client' version of OSX, or in earlier versions of OSX:

Mac OSX 10.3 and onwards has the basics for a successful Mailman installation. Users of earlier versions of Mac OSX contains Sendmail and those users should look at the Sendmail installation section for tips. You should follow the basic installation steps as described earlier in this manual, substituting as appropriate, the steps outlined in this section.

By default, Mac OSX 10.3 'client' version does not have a fully functional version of Postfix. Setting up a working MTA such as Postfix is beyond the scope of this guide and you should refer to http://www.postfix.org for tips on getting Postfix running. An easy way to set Postfix up is to install and run Postfix Enabler, a stand-alone tool for configuring Postfix on Mac OSX, available from http://www.roadstead.com/weblog/Tutorials/PostfixEnabler.html.

Likewise, Mac OSX 'client' version from 10.1 onwards includes a working Apache webserver. This is switched on using the System Preferences control panel under the 'Sharing tab'. A useful tool for configuring the Apache on Mac OSX is Webmin, which can be obtained from http://www.webmin.com.

Webmin can also perform configuration for other system tasks, including Postfix, adding jobs to your crontab, adding user and groups, plus adding startup and shutdown jobs.

In a stock installation of OSX, the requirement for Mailman is to have Python installed. Python is not installed by default, so it is advised that you install the developer's tools package, which may have been provided with your system. It can also be downloaded from the Apple developer site at http://connect.apple.com. Not only is the developer tools package an essential requirement for installing Mailman, but it will come in handy at a later date should you need other tools. The developer's tools are also know by the name XCode tools.

As a minimum, the Python version should be 2.2, but 2.3 is recommended.

If you wish to add a user and group using the command line in OSX instead of via Webmin or another GUI interface, open your terminal application and follow the commands as indicated below - do not type the comments following the "#" since they are just notes:

sudo tcsh
niutil -create / /users/mailman
niutil -createprop / /users/mailman name mailman
# Note that xxx is a free user ID number on your system
niutil -createprop / /users/mailman uid xxx
niutil -createprop / /users/mailman home /usr/local/mailman
mkdir -p /usr/local/mailman
niutil -createprop / /users/mailman shell /bin/tcsh
passwd mailman
# To prevent malicious hacking, supply a secure password here
niutil -create / /groups/mailman
niutil -createprop / /groups/mailman name mailman
# Note that xxx is a free group ID number on your system
niutil -createprop / /groups/mailman gid xxx
niutil -createprop / /groups/mailman passwd '*'
niutil -createprop / /groups/mailman users 'mailman'
chown mailman:mailman /usr/local/mailman
cd /usr/local/mailman
chmod a+rx,g+ws .
su mailman

For setting up Apache on OSX to handle Mailman, the steps are almost identical and the configuration file on a stock Mac OSX Client version is stored in the nearly standard location of /etc/httpd/httpd.conf.

The AFP548.com site has a time-saving automated startup item creator for Mailman, which can be found at http://www.afp548.com/Software/MailmanStartup.tar.gz

To install it, copy it into your /Library/StartupItems directory. As the root or superuser, from the terminal, enter the following:

gunzip MailmanStartup.tar.gz
tar xvf MailmanStartup.tar

It will create the startup item for you so that when you reboot, Mailman will start up.