Work on Majordomo 2

Majordomo2 is a project that has been long in the making. Some information is available at www.mj2.org.

The project has a number of problems that has kept it from gaining mindshare. The purpose of this project is to remedy this situation by providing a partially dedicated developer to the project.

The goals of this project are to provide for a 1/3 FTE person to work on majordomo2. Below lists a number of goals. A bidder should indicate which goals they feel can be done in what amount of time, as the intention is to have a multiple year contract.

The code has never been packaged and released

The resource will package majordomo2 twice a year and release it as .tar.gz.

The resoruce will update pkgsrc and Debian .deb package control files as appropriate, coordinating any changes that volunteers may provide.

Configuration requires source code

The resource will move all configuration code to seperate programs/interfaces, which can be easily packaged. It will be possible to configure new virtual hosts without the source code.

Web interface updates

The resource will undertake to provide a quick-start interface for new users, with simple to communicate (stable) URLs, and with the minimum of options in the "novice" interface.

Moderation queues

The resource will create multiple moderation queues, on a per-list configuration basis, permitting different reasons for being moderated to split into multiple screens.

The goal is to make it easier for a moderator to discard all postings which are being moderated due to "non-member" (spam), while still receiving timely notices about submissions which are caught due to attachments, etc.

interface to spamassasin

The resource will create some kind of interface to spamassassin.

This could be as simple as parsing spamasssin headers, and discarding things above a certain threshold automatically, and moderating others in some range. It could also be as complex as using the spamassasin libraries (which are also perl5), to perform different kinds of filtering (and discard) on the different moderation queues.

Consideration should be given to DKIM processing --- both as a recipient and as a sender.

Interface to OpenPGP

The resource will create an interface to PGP signatures.

The simplest part of this requirement is that a list may declare that all signed messages (from keys in a keyring, controlled by the list owner, via the web interface), be accepted to the list, regardless of their From: origin.

As an option, the list may wish to have the signature removed.

As an option, the list may wish to sign with a list key.

As a further option, the list be configured to moderate all postings, even from members, unless the message has been signed.

Finally, the list may wish to simply delay unsigned postings by a set amount of time (hours, day, weeks), to encourage participants to sign their emails. This option might be used by lists which desire to be "open", but do not wish to forward spam in a timely fashion.


Michael Richardson
Last modified: Wed Nov 22 14:09:23 EST 2006