Extra archivers for Mailman 3.
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 

88 lines
2.6 KiB

# 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:
```sh
apt install python3-pip python3-setuptools python3-wheel
```
Then:
```sh
pip3 install .
```
## MonthlyArchiver
This archiver stores each message in a maildir folder for the message's year
and month.
The motivation behind `MonthlyArchiver` was to avoid storing thousands of
messages in a single directory, which the `Prototype` archiver currently
does.
Example directory structure:
```
/var/lib/mailman3/archives/
|-- monthly_archiver/
|-- mylist@mydomain.com/
|-- 2021/
|-- April/
| |-- cur/
| |-- new/
| | |-- 1618032020.M509265P87123Q1.mail
| | |-- 1618032509.M464173P87208Q1.mail
| |-- tmp/
|-- May/
|-- cur/
|-- new/
|-- tmp/
```
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`
(Mailman adds a `List-Archive` header to each message with this value).
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
```
To hide the list URL from each message, simply set `base_url` to an empty string:
```
base_url:
```