ezmlm is a set of programs to run mailing lists either from a web interface, via mail or from the command line. It can be used as an alternative to Mailman. This guide covers only the command line and the mail interface, not the web. It does not use a database but just flat files. For using a database and the web see the detailed docs.
For this guide you should be familiar with the basic concepts of
- Mailing lists
- Compiling a C program using Makefiles
When adding yourself to the list and test sending emails, be aware that GMail silently drops mails sent by yourself when they arrive again via the mailing list. One could think that there is a flaw in the uberspace qmail configuration sending out emails!
ezmlm was written by Fred Lindberg, Fred B. Ringel, and Bruce Guenter and released under GPLv2.
[isabell@stardust ~] wget https://untroubled.org/ezmlm/archive/7.2.2/ezmlm-idx-7.2.2.tar.gz [isabell@stardust ~] tar -xzf ezmlm-idx-7.2.2.tar.gz [isabell@stardust ~] cd ezmlm-idx-7.2.2/ [isabell@stardust ezmlm-idx-7.2.2]
Change the configuration by editing the
conf-* files using a text editor. It is usually sufficient to change the following files:
[isabell@stardust ezmlm-idx-7.2.2] make [...] [isabell@stardust ezmlm-idx-7.2.2] make man [...] [isabell@stardust ezmlm-idx-7.2.2] ./ezmlm-test getconfopt library: OK ezmlm-make: OK Using subdb plugin: std [...] ezmlm-send: OK ezmlm-send (from): OK ezmlm-send trailer: OK omitbottom (-manage): OK omitbottom (-get): OK Cleaning up... [isabell@stardust ezmlm-idx-7.2.2]
The test call should show that everything is OK. Now create directories and install everything in the correct locations
[isabell@stardust ezmlm-idx-7.2.2] mkdir -p /home/isabell/lib /home/isabell/etc [isabell@stardust ezmlm-idx-7.2.2] make install [...] [isabell@stardust ezmlm-idx-7.2.2]
You can run ezmlm-test again if you wish. Now also
man ezmlm-make should work.
If not, check the output of the respective commands for errors.
Configuration and Usage¶
ezmlm comes with templates for the administrative messages it sends. They are installed in the directory configured in
conf-etc above. To change a message you can edit the files directly. To set a new default language change the
default symbolic link to point to the subdirectory with the chosen language.
It is advisable to keep the lists in a separate directory where ezmlm will create subdirectories for every single list:
[isabell@stardust ~] mkdir lists [isabell@stardust ~]
Adding / removing a mailing list¶
Most administrative commands need to be done from the command line using different tools.
In order to add a remotely administered list (-r) without an archive (-A) with the list owner
firstname.lastname@example.org and the list address
email@example.com you can do:
[isabell@stardust ~] ezmlm-make -rA -5 firstname.lastname@example.org ~/lists/mylist ~/.qmail-mylist mylist isabell.uber.space [isabell@stardust ~]
This will add the directory
~/lists/mylist where everything concerning this list will be stored and setup all necessary
To remove the list simply delete the directory
~/lists/mylist and the
[isabell@stardust ~] rm -rf ~/lists/mylist ~/.qmail-mylist* [isabell@stardust ~]
Subscribing / Unsubscribing¶
Users can either subscribe thenselves to a list by writing an email to
email@example.com or can be added from the command line:
[isabell@stardust ~] ezmlm-sub ~/lists/mylist firstname.lastname@example.org [isabell@stardust ~]
To unsubscribe write an email to
email@example.com or use:
[isabell@stardust ~] ezmlm-unsub ~/lists/mylist firstname.lastname@example.org [isabell@stardust ~]
ezmlm can do many more things such as subscriber only lists, list moderation etc. Have a look at the man page for ezmlm-make or at the online documentation for details.Written by: Michael Behrisch <email@example.com>