Extra archivers for Mailman 3.
Go to file
Max Erenberg fd9ed1dfa1 add Pipermail archiver 2021-04-08 01:51:17 -04:00
pipermail add Pipermail archiver 2021-04-08 01:51:17 -04:00
src/extra_mailman_archivers add Pipermail archiver 2021-04-08 01:51:17 -04:00
.gitignore add Pipermail archiver 2021-04-08 01:51:17 -04:00
README.md add Pipermail archiver 2021-04-08 01:51:17 -04:00
setup.cfg add Pipermail archiver 2021-04-08 01:51:17 -04:00
setup.py first commit 2021-04-06 02:32:35 -04:00

README.md

Extra Mailman Archivers

This contains some extra archivers to be used with Mailman 3. Currently there are two archivers, MonthlyArchiver, and Pipermail.

Installation

Make sure to have the following packages installed first:

apt install python3-pip python3-setuptools python3-wheel

Then:

pip3 install .

MonthlyArchiver

MonthlyArchiver simply gzips each message and stores it in a folder named by the year and month. Each message's file name is a Unix epoch timestamp.

The motivation behind MonthlyArchiver was to avoid storing thousands of messages in a single directory, which the Prototype archiver currently does since it uses a maildir.

Example directory structure:

/var/lib/mailman3/archives
\_ monthly_archiver
   \_ mylist@mydomain.com
      \_ 2021-April
         \_ 1617678398.173.mail.gz
         \_ 1617678805.351.mail.gz
      \_ 2021-May
         \_ ...

To enable this archiver, add the following to your mailman.cfg:

[archiver.monthly_archiver]
class: extra_mailman_archivers.monthly_archiver.MonthlyArchiver
enable: yes

Pipermail

This archiver attempts to add messages to Pipermail, the archiver for Mailman 2. An existing Mailman 2 installation is required.

If the mailing list does not exist in the Mailman 2 directory, you must create it first. Use the newlist-pipermail script in the pipermail directory after copying it to the bin directory where Mailman 2 is installed. It works the same way as the traditional newlist script except that it does not communicate with the MTA. Note: by default, this will create a public archive; to make it private, unlink the appropriate folder in the archives/public directory where Mailman 2 is installed.

To enable this archiver, add the following to your mailman.cfg:

[archiver.pipermail]
class: extra_mailman_archivers.pipermail.Pipermail
enable: yes

The default list URL for this archiver is http://$domain/pipermail/$short_listname. The default Mailman 2 directory is /var/lib/mailman. To change either of these values, add the following to the pipermail section in mailman.cfg:

configuration: /etc/mailman3/mailman-pipermail.cfg

Then, in /etc/mailman3/mailman-pipermail.cfg, set base_url and/or mailman2_dir appropriately, e.g.

[general]
base_url: http://$domain/old/pipermail/$short_listname