[Mailman-Users] Mailman 3 on Ubuntu 18.04

Odhiambo Washington odhiambo at gmail.com
Sun Dec 9 13:14:19 EST 2018

Hello everyone,

I am seeking a third, fourth and even fifth eyes on this one.

In my quest to run Mailman3, I obtained a VM running Ubuntu 18.04 and
started on getting to run Mailman3.
I found this link -> https://github.com/iomarmochtar/mailman3_ei
It has instructions which looked fairly simple to get Mailman3 installed.
However, I did encounter some hitches since the script is not meant for
With a few runs and observing the logs and modifying the script at every
step it encountered and error, I finally managed to install Mailman3. It
seems this is what you guys call a virtual environment in the Linux world?

Being a *BSD guy, this has not been easy for me. And I am an old cat so
learning new things isn't exactly pleasant! :-)

I would like to run Mailman3+MySQL and so far I have pulled in the
necessary bits into the venv.
First, I used `apt-get install python-pip python-dev libmysqlclient-dev`
which to be honest I wasn't sure installed pymysql so I used the tools in
the venv to be sure:
./conda/bin/pip install pymysql

The script ultimately installed two files:
/etc/supervisor/conf.d/{nginx.ini|webui.ini} which in my understanding now
are supervisor scripts.
I then had to install supervisord by reading from

root at lists:/etc/supervisord.d# python -m easy_install supervisor (I realize
I could use `pip install supervisor', but that's just how things get
Installing echo_supervisord_conf script to /usr/local/bin
Installing pidproxy script to /usr/local/bin
Installing supervisorctl script to /usr/local/bin
Installing supervisord script to /usr/local/bin
I am not sure that this was right. Should I have installed the supervisor
on the main machine to run the bits, or the supervisor to be use is already
installed in the venv?
That is where a lot of the confusion exists in my mind.

Within the script, there is reference to a file
named misc/mailman3_core_requirements.txt which contained two lines, but I
added the third one - postorius==1.2.0. Now to be honest, I am not even
sure that was necessary or whether it ended installing it at all, because I
think there is a good reason it wasn't there. What the reason is is what
baffles me.


Luckily, I got the supervisord running, and finally was able to make the
1st leap (and I must swear this made me jump from my seat!):
=> /opt/mailman3/conda/envs/mailman3_ext/bin/python
/opt/mailman3/webui/manage.py createsuperuser - this allowed me to create a
The next steps in this script says that:

*to run mailman3 services:*
*service mailman3 start*
*systemctl start supervisord*

>From this point now is where I need help - serious help in smoothening
things up and getting to understand these venv stuff!

So I did run 'service mailman3 start' but this seems to be waiting for too
long to drop me back into the CLI.
I also run 'systemctl start supervisord' and that seems to work. What I am
not sure is whether 'systemctl stop supervisord' actually does what it is
expected to do because after I execute it, I still see processes running
that I think are related.

So far, I have been able to access the webUI on my VM using
I created a domain.
But when I create a test list, I get an error - and I do not have a clue
which logfile would have the error details - nginx or mailman... (I am 100%
new to nginx).

So now, I am stuck at:
1. Creating the mailing list
2. Getting to know whether the archiver is installed and running
3. Knowing is there are cron jobs to be running (Mailman2 type of thinking!)

Ultimately I need to figure out:
1. How the mailman queue runners are started and stopped
2. Migrate s few lists from Mailman2 to this Mailman3
3. Mailman3 should use MySQL storage and Exim4 as the MTA (I have
configured these bits in mailman.cfg)

Thanks for your time reading all the blabbing I have put in here  :-)

Best regards,
+254 7 3200 0004/+254 7 2274 3223
"Oh, the cruft."

More information about the Mailman-Users mailing list