Difference between revisions of "Mailing Lists"

From CSCWiki
Jump to navigation Jump to search
m
Line 40: Line 40:
 
were not migrated due to inactivity. See <code>/var/lib/mailman/data/aliases</code> in the mail container to see which lists were not
 
were not migrated due to inactivity. See <code>/var/lib/mailman/data/aliases</code> in the mail container to see which lists were not
 
migrated.
 
migrated.
  +
  +
==== Database setup ====
  +
Log into the coffee VM as root, run <code>mysql</code>, and create new databases for Mailman 3 and HyperKitty:
  +
<pre>
  +
CREATE DATABASE mailman3;
  +
CREATE USER mailman3 IDENTIFIED BY 'replace_this_password';
  +
GRANT ALL PRIVILEGES ON mailman3.* TO mailman3;
  +
</pre>
  +
Repeat the steps above for <code>mailman3web</code> instead of <code>mailman3</code>.
  +
  +
<b>Warning:</b> Make sure the MariaDB version is 10.2 or newer. The default package in Debian 10 and above should be fine.
  +
  +
==== Mail container setup ====
  +
First, install some prerequisites which we'll need later:
  +
<pre>
  +
apt update
  +
apt install python3-pip python3-mysqldb memcached python3-pylibmc python3-xapian
  +
pip3 install git+https://github.com/notanumber/xapian-haystack.git
  +
</pre>
  +
As of this writing (2021-04-17), the package <code>python3-xapian-haystack</code> in the Debian repositories is broken. Make sure to install
  +
the latest version off of GitHub, as shown above.
   
 
[[Category:Systems]]
 
[[Category:Systems]]

Revision as of 18:47, 17 April 2021

Systems Mailing Lists

The following mailing lists are the targets of various automated notifications. Subscribe to them to receive these notifications.

git@csclub.uwaterloo.ca

Commits to club git repositories are sent to this list in patch form.

packages@csclub.uwaterloo.ca

Changes to our debian repository are sent to this list.

ceo@csclub.uwaterloo.ca

CEO sends a note to this list every time a new member or club is added.

Technical Details

Most of our mailing lists are handled through Mailman, including the lists for the Executive (exec@csclub.uwaterloo.ca), the Program Committee (progcom@csclub.uwaterloo.ca), and the Systems Committee (syscom@csclub.uwaterloo.ca).

Mailman 3

Starting from April 2021, we now use Mailman 3 for managing our mailing lists. Mailman 3 is split into three independent components:

  • Mailman 3 Core is responsible for sending and receiving emails.
  • Postorius is the web admin UI for creating and managing mailing lists.
  • HyperKitty is the archiver, where past messages can be viewed and searched.

Day-to-Day Operations

The Django admin site for Mailman 3 is accessible from here. Generally, you'll only need to use this to see the list of accounts, and to assign/remove permissions from them.

If you are logged in as a superuser, you should be able to see a list of all the mailing lists from here. After clicking on a list, you should be able to access and modify all of its settings, including subscription policy and message acceptance. Most of the setting names should be self-explanatory. For example, under 'Held Messages', you can see a list of all held messages, and take an action on each one (discard, reject, accept, etc.).

Installation

The steps below describe how Mailman 3 was installed on the mail container and how we migrated the lists from Mailman 2. Note that some lists were not migrated due to inactivity. See /var/lib/mailman/data/aliases in the mail container to see which lists were not migrated.

Database setup

Log into the coffee VM as root, run mysql, and create new databases for Mailman 3 and HyperKitty:

CREATE DATABASE mailman3;    
CREATE USER mailman3 IDENTIFIED BY 'replace_this_password';    
GRANT ALL PRIVILEGES ON mailman3.* TO mailman3;

Repeat the steps above for mailman3web instead of mailman3.

Warning: Make sure the MariaDB version is 10.2 or newer. The default package in Debian 10 and above should be fine.

Mail container setup

First, install some prerequisites which we'll need later:

apt update    
apt install python3-pip python3-mysqldb memcached python3-pylibmc python3-xapian    
pip3 install git+https://github.com/notanumber/xapian-haystack.git

As of this writing (2021-04-17), the package python3-xapian-haystack in the Debian repositories is broken. Make sure to install the latest version off of GitHub, as shown above.