Revision 2 as of 2016-03-08 20:41:09

Clear message

How to setup your dev environment

First you need to decide which projects you want to develop. You will most likely always need mailman-core and mailmanclient.

After that you can choose if you want to stick to the core, or you want to also develop django projects. There is postorius - Management Interface And Hyperkitty - Mailman Archiver

This guide assumes that you are setting everything in the directory created below:

mkdir -p ~/dev/mailman

And that you have two virtualenvs:

cd ~/dev/mailman
virtualenv -p /usr/bin/python3 venv3
virtualenv -p /usr/bin/python2 venv2

Mailman Core

cd ~/dev/mailman
git clone git@gitlab.com:mailman/mailman.git
source venv3/bin/activate
cd mailman
mailman setup.py develop
deactivate

Mailman Client

cd ~/dev/mailman
git clone git@gitlab.com:mailman/mailmanclient.git
source venv2/bin/activate
cd mailmanclient
python setup.py develop
deactivate

Postorius

Make sure to install mailmanclient first!

cd ~/dev/mailman
git clone git@gitlab.com:mailman/postorius.git
source venv2/bin/activate
cd postorius
python setup.py develop
deactivate

Hyperkitty

Make sure to install mailmanclient first!

cd ~/dev/mailman
git clone git@gitlab.com:mailman/hyperkitty.git
source venv2/bin/activate
cd hypkerkitty
python setup.py develop
deactivate

Django projects

cd ~/dev/mailman
git clone git@gitlab.com:mailman/hyperkitty_standalone.git
git clone git@gitlab.com:mailman/postorius_standalone.git

To run any of the django projects

cd ~/dev/mailman
source venv2/bin/activate
cd postorius_standalone
python manage.py migrate
python manage.py createsuperuser
python manage.py runserver

Hyperkitty is setup the same way as postorius.