[Mailman-Users] Mailman on OS X, launchctl

Larry Stone lstone19 at stonejongleux.com
Mon Mar 3 05:32:42 CET 2014

On Mar 2, 2014, at 6:07 PM, Jim Wright <jim at wrightthisway.com> wrote:

> I've been lurking on this list for a few years now, and have been running Mailman 2.1.14 for a few years here.  I have no idea what install tips I may have followed originally, but Mailman is generally working fine.  The issue I'm running into is that Mailman needs to be restarted periodically, usually where I notice this is that at the beginning of the month Mailman doesn't send out it's usual monthly reminder.  I only have 1 very low volume mailing list, so this is usually the first clue that it has stopped.
> I have several LaunchDaemons set up to perform various functions at various intervals, but like I said I'm not sure what steps I originally followed when setting this up, if I created these from scratch, etc.  So, basically, I'm looking for help from any other OS X users that might have a working set of launchctl files that I could leverage, I'm currently running OS X 10.7.5 (non-Server) on the mail server.

I think the real question you have to answer is why it needs to be restarted. I run Mailman on OS X (client) but am on the current Mavericks (10.9.2). My launchctl plist merely starts Mailman at boot (mailmanctl -s start) and exits (RunAtLoad true). It does not monitor and restart it and I do not have a problem with Mailman dying on me (but if it does, I have an hourly cron job that checks to make sure what should be running (more than just Mailman) is running. Rarely does it catch something). 

Unfortunately, as I understand it (I am not a launchd expert), launchd expects any program it starts to keep running. Programs that are started with a command that starts the daemon and then exit (such as Mailman’s mailmanctl command) do not fit the launchd model. In a normal launchd environment where it’s told to keep a program running with KeepAlive, it would see mailmanctl exit and restart it - obviously not what we want with Mailman. Since the command it is running is mailmanctl, it has not idea of what other processes start as a result so has no way to monitor them.

Larry Stone
lstone19 at stonejongleux.com

More information about the Mailman-Users mailing list