Jan 11
2021

Majordummo: simple management of small, private mailing lists

Majordummo is a mailing list manager for small, private mailing lists. Its primary goal is simplicity and is therefore implemented as a single Python file which uses no third-party packages. Because it leverages Python’s excellent standard library the entire thing is a little over 200 lines of fairly readable code. Its unofficial motto is “if I could have done the entire thing in Postfix, I would”.

To use it, just download deliver.py, customise your configuration file, and set your mail delivery agent to run it when mail arrives (e.g. by putting it in /etc/aliases — see the README for details).

Majordummo is for a very specialised niche. As an example, it has no externally-accessible configuration. This means that adding or removing people from the mailing list requires editing its configuration file. If this sounds like a feature for your purposes, then you might wish to give it a try. If this sounds ridiculous, then you may want to try Majordomo instead.

Why?

I wrote this because I wanted something to manage a mailing list for known group of recipients and was put off by the complexity of both Majordomo and Mailman. The heyday of mailing lists is long past — I don’t need customisable templates, a Web interface, customisable subject prefixes, or even bounce messages. In fact, I don’t want those things, as they can only increase attack surface and, sometimes, resource usage (A standard Mailman installation, for example, requires a daemon and a website). In contrast, Majordummo has the minimum feature set necessary for my purposes — and maybe yours.