On 1/16/21 6:06 PM, bruce.dubbs@gmail.com wrote:
I am trying to set up Mailman 3 on a new server. So far I have run:
pip3 install Django==3.1.5
This will be a minor issue. django-mailman3 requires Django>=2.0,<3.2; HyperKitty requires Django>=2.2,<3.2, but postorius requires Django>=1.11,<3.1. We really should be more consistent with these requirements, but what this means is
pip3 install postorius
will install Django 3.0.11 alongside Django 3.1.5.
pip3 install Hyperkitty pip3 install mailman pip3 install uwsgi
All that went well. I've been struggling with the configuration though. I am using /etc/mailman.cfg and that seems to be explained in the documentation OK. From there I am confused.
I do have sqlite installed, but the documentation discusses mysql/mariadb and postresql. What are the considerations as to why I would need one of these other DBs?
You can use sqlite, but if you don't already have a mysql/mariadb database on the server, we recommend postgresql for performance and robustness. I personally have had issues with mysql and use postgresql on one production server that uses mysql for other applications.
I think I can follow the instructions to set up postfix.
In the section 'Configure Web Frontend', it discusses setting up the administrator. As I want to put Mailman on /srv/mailman I can create that, but what should the owner/permissions be? Later the docs discuss editing Django's settings.py. Where do I find that file? I'll note here that my experience with python is quite limited and my knowledge of Django is nil.
There should be a 'mailman' user that is the user under which you run things. Don't run things as root.
sudo chown -R mailman:mailman /srv/mailman
For settings.py and some others, see <https://gitlab.com/mailman/mailman-suite/-/tree/master/mailman-suite_project>. The end of settings.py imports from settings_local so you put your local overrides in settings_local.py in the same directory as settings.py
Later in the section 'Set up HyperKitty', it sends me to a page that discusses installing it. I did that with pip3. Then it says to 'Setup your django project'. What django project is that.
Postorius and HyperKitty. See settings.py. These files, settings.py and settings_local.py need to be in a directory that also includes an empty __init__.py so python can import from it and this directory needs to be in the path that Django runs with. This is a shell script I use to run django. It uses a virtualenv, but that isn't necessary. Also my stuff is in /opt/mailman/mm/, but it could just as well be /srv/mailman.
#!/bin/bash . /opt/mailman/mm/venv/bin/activate cd /opt/mailman/mm export PYTHONPATH=/opt/mailman/mm export DJANGO_SETTINGS_MODULE=settings django-admin $@
I would appreciate advice or a pointer to where I can figure this out. Thanks.
There is a work in progress you may find more helpful. See <https://gitlab.com/mailman/mailman-suite-doc/-/merge_requests/55#note_487120...> and the 'Rendered documentation' linked therefrom.
You might also find <https://wiki.list.org/x/17891998> and/or the docs linked from its first paragraph to be helpful.
-- Mark Sapiro <mark@msapiro.net> The highway is for gamblers, San Francisco Bay Area, California better use your sense - B. Dylan