The original impetus for writing qmail was to send out list mail faster than existing MTAs, so it’s not surprising that qmail has excellent built-in support for mailing lists. The first part of this chapter looks at its list handling support, which is quite adequate for small and medium-sized lists. Then it covers ezmlm, the automated mailing list package designed to work with qmail, and other qmail-compatible list management software.
The easiest and most common way to handle a small list is to put the list in a .qmail file. To reiterate an example from Chapter 10, assume a user’s name is fred, and the list is about fishing. Then the list goes into ~fred/.qmail-fishing, one address per line like any other .qmail file (see Example 14-1).
email@example.com firstname.lastname@example.org email@example.com &/firstname.lastname@example.org
Note that the third address, an X.509 address that contains slashes, is preceded by an ampersand to keep it from being interpreted as a filename. Also, Fred’s address is in the list so he gets copies of messages sent to it. To send mail to this list, one needs only to send a message to fred-fishing, and it’s redistributed to all of the list members.
Qmail provides a small but useful set of functions to maintain list files. To edit a file safely, set the otherwise unused “sticky” bit in the user’s home directory, edit the file, then unset the sticky bit:
$ cd $ chmod +t ...