- Notifications
You must be signed in to change notification settings - Fork0
Easy Mailing List Manager which works with indimail-mta, IndiMail
License
indimail/ezmlm-idx
Folders and files
Name | Name | Last commit message | Last commit date | |
---|---|---|---|---|
Repository files navigation
Current Compilation Status
Easy Mailing List Manager forindimail-mta,qmail
This has been forked fromezmlm-idx Project Homepage to adapt it to work with indimail-mta's multi-queue architecture. The four major changes that this version has made after the fork are
- Ability to set environment variables in /etc/indimail/ezmlm/global_vars. You can create any file in this directory. The file name becomes the environment variable and the file content becomes the value of environment variable.
- New queue program ezmlm-queue which can use qmail-qmqpc to useQMQP protocol,qmail-multi to queue mails to indimail's multi-queue instance orqmail-queue to queue mails to anyqmta /qmail /netqmail /notqmail instance.
- Configure mailing lists using indimail's web administration tooliwebadmin.
- Use all common functions fromlibqmail library.
ezmlm is an easy-to-use, high-speed mailing list manager for qmail.
ezmlm lets users set up their own mailing lists within qmail's address hierarchy. A user, Joe, typesezmlm-make ~/SOS ~/.qmail-sos joe-sos isp.net
and instantly has a functioning mailing list,joe-sos@isp.net, with all relevant information stored in a new ~/SOS directory.
ezmlm sets up joe-sos-subscribe and joe-sos-unsubscribe for automatic processing of subscription and unsubscription requests. Any message to joe-sos-subscribe will work; Joe doesn't have to explain any tricky command formats. ezmlm will send back instructions if a subscriber sends a message to joe-sos-request or joe-sos-help.
ezmlm automatically archives new messages. Messages are labelled with sequence numbers; a subscriber can fetch message 123 by sending mail to joe-sos-get.123. The archive format supports fast message retrieval even when there are thousands of messages.
ezmlm takes advantage of qmail's VERPs to reliably determine the recipient address and message number for every incoming bounce message. It waits ten days and then sends the subscriber a list of message numbers that bounced. If that warning bounces, ezmlm sends a probe; if the probe bounces, ezmlm automatically removes the subscriber from the mailing list.
ezmlm is easy for users to control. Joe can edit ~/SOS/text/* to change any of the administrative messages sent to subscribers. He can remove ~/SOS/public and ~/SOS/archived to disable automatic subscription and archiving. He can put his own address into ~/SOS/editor to set up a moderated mailing list. He can edit ~/SOS/{headeradd,headerremove} to control outgoing headers. ezmlm has several utilities to manually inspect and manage mailing lists.
ezmlm usesDelivered-To
header to stop forwarding loops, Mailing-List to protect other mailing lists against false subscription requests, and real cryptographic cookies to protect normal users against false subscription requests. ezmlm can also be used for a sublist, redistributing messages from another list.
ezmlm is reliable, even in the face of system crashes. It writes each ew subscription and each new message safely to disk before it reports success toindimail-mta.
ezmlm doesn't mind huge mailing lists. Lists don't even have to fit into emory. ezmlm hashes the subscription list into a set of independent files so that it can handle subscription requests quickly. ezmlm uses mail for blazingly fast parallel SMTP deliveries.
ezmlm-idx originated as an add-on toezmlm. It now exists as a complete package on its own, but can still be considered essentially as an extension to ezmlm. It adds multi-message threaded message retrieval from the archive, digests, message and subscription moderation, and a number of remote administration function. It modifies the configuration program ezmlm-make(1) so that it uses a text file template rather than compiled-in texts in list creation. In this manner, ezmlm-idx allows easy setup of lists in different languages and customization of default list setup. ezmlm-idx also adds MIME handling, and other support to streamline use with languages other than English. Prior to version 7, ezmlm-idx existed as an ezmlm source add-on, and as such did not work without ezmlm. ezmlm-idx tries to be compatible with ezmlm as much as possible in its usage, though the internal structure has changed considerably. ezmlm-idx also modifies the ezmlm subscriber database to be case insensitive to avoid many unsubscribe problems.
ezmlm-idx uses functions from libqmail library. libqmail uses GNU autotools. You need to haave autoconf, automake, libtool and pkg config package. Follow the instructions below to have them installed in case you don't have them.
$ cd /usr/local/src$ git clone https://github.com/indimail/libqmail.git$ cd /usr/local/src/libqmail$ ./default.configure$ make$ sudo make install-strip
(check version in libqmail/conf-version)
NOTES
For Darwin (Mac OSX), installMacPorts or brew. You can look at thisdocument for installing MacPorts.
FreeBSD# pkg install automake autoconf libtool pkgconf mysql80-server mysql80-clientDarwin# port install autoconf libtool automake pkgconfig openssl mysql# port update outdatedArch Linux# pacman -S --refresh --sysupgrade# pacman -S --needed archlinux-keyring# pacman -S base-devel diffutils coreutils openssl mysqlGentoo Linux# emaint -a sync# emerge-webrsync# emerge -a app-portage/eix# eix-sync# etc-updateAlpine Linux# apk add gcc g++ make git autoconf automake libtool m4 sed# apk add openssl-dev mysql-dev
$ cd /usr/local/src$ git clone https://github.com/indimail/ezmlm-idx.git$ cd /usr/local/src/ezmlm-idx/ezmlm-idx-x$ ./default.configure$ make$ sudo make install-strip
Build Status onOpen Build Service
You can get binary RPM / Debian packages at
If you want to use DNF / YUM / apt-get, the corresponding install instructions for the two repositories, depending on whether you want to install a stable or an experimental release, are
- Stable
- Experimental
- copr Releases. The copr repository can be enabled by running the command
$ sudo dnf copr enable cprogrammer/indimail
Currently, the list of supported binary distributions for ezmlm-idx is * Arch Linux * SUSE o openSUSE_Leap_15.4 o openSUSE_Leap_15.5 o openSUSE_Leap_15.6 o openSUSE_Tumbleweed o SUSE Linux Enterprise 12 o SUSE Linux Enterprise 12 SP1 o SUSE Linux Enterprise 12 SP2 o SUSE Linux Enterprise 12 SP3 o SUSE Linux Enterprise 12 SP4 o SUSE Linux Enterprise 12 SP5 o SUSE Linux Enterprise 15 o SUSE Linux Enterprise 15 SP1 o SUSE Linux Enterprise 15 SP2 o SUSE Linux Enterprise 15 SP3 o SUSE Linux Enterprise 15 SP4 o SUSE Linux Enterprise 15 SP5 o SUSE Linux Enterprise 15 SP6 * Red Hat o Fedora 39 o Fedora 40 o Fedora Rawhide o Red Hat Enterprise Linux 7 o Red Hat Enterprise Linux 8 + o Red Hat Enterprise Linux 9 + o EPEL 8 + o EPEL 9 + o Scientific Linux 7 o CentOS 7 o CentOS 8 o CentOS 8 Stream o CentOS 9 Stream o CentOS 10 Stream o RockyLinux 8 o RockyLinux 9 o OracleLinux 8 o OracleLinux 9 o AlmaLinux 8 o AlmaLinux 9 o AmazonLinux 2023 +: Some of the above Red Hat flavoured distributions are available only on copr (RHEL 8, RHEL9, EPEL9, EPEL9) * Debian o Debian 10.0 o Debian 11.0 o Debian 12.0 * Ubuntu o Ubuntu 18.04 o Ubuntu 20.04 o Ubuntu 22.04 o Ubuntu 23.04 o Ubuntu 24.04 * Mageia o Mageia 8 o Mageia 9
NOTE: You can also build local binary packages. To generate RPM packages locally for all components refer toCreate Local Binary Packages
For this forked version of ezmlm-idx, you can contact on IRC or mailing list
- Matrix Invite Link #indimail:matrix.org
- IndiMail has anIRC channel on libera #indimail-mta
There are two Mailing Lists for IndiMail
- indimail-support - You can subscribe for Supporthere. You can mailindimail-support for support Old discussions can be seenhere
- Archive atGoogle Groups. This groups acts as a remote archive for indimail-support and indimail-devel.
There is also aProject Tracker for IndiMail (Bugs, Feature Requests, Patches, Support Requests)
The IDX patches add: Indexing, (Remote) Moderation, digest, make patches, multi-language, MIME, global interface, SQL database support.
Fred Lindberglindberg@id.wustl.edu, Fred B. Ringelfredr@rivertown.net, Bruce Guenterbruce@untroubled.org, and many others
About
Easy Mailing List Manager which works with indimail-mta, IndiMail