Hey,
> > Before requesting for sponsorship, and packaging officially the other
> > components of mailman3, I'd like some "testers" for the core package I
> > built, in order to be sure that it works, and that I will not introduce
some
> > stupid caveats on the packaging of the other components.
> >
> > .deb can be found here: http://peb.pimeys.fr/mailman/mailman3-core/
> > git repo can be found there: https://gitlab.pimeys.fr/PEB/mailman3-core
> > and there: https://github.com/P-EB/mailman3-core
> >
> > Any volunteer welcome! Please, I need your help, I cannot review my work
> > alone! :)
>
> I just tried to have a look in a stretch docker image.
>
> - There are three .deb files on your webserver
>
> mailman3-core_3.0.0-1_all.deb
> mailman3-core_3.0.0-3_all.deb
> mailman3-core_3.0.0-3_amd64.deb
>
> It is not immediately obvious which one to test, since -1 has actually
> a newer timestamp.
>
> - Mailman Core 3.0.1 and 3.0.2 have been released in the meantime
Fixes e.g https://gitlab.com/mailman/mailman/issues/125 which could be very
frustrating to users as seen in https://groups.io/g/debops/message/29
> - it does not work on stretch/sid because it is not compatible with
> Python 3.5, see https://gitlab.com/mailman/mailman/issues/181
Same problem on Ubuntu Xenial, that I tried first for testing. The package
should have a more strict python dependency.
> - it does not install on Jessie (even with jessie-backports because of
> missing dependencies) (just a note because of not working on stretch
> either)
I tries Ubuntu Wily afterwards. But I good an error due to outdated falcon.
Please express the version constraint also in Dpkg to get an error on
installation time, not on start time. Backporting a newer falcon version fixed
the issue.
> - The systemd unit won't work because the parameter for the
> configuration file is '-C', not '-c'
>
> - installing python3.4 and changing the shebang in /usr/bin/mailman
> leads to the following error
>
> root@4ca9477a166c:~# /usr/bin/mailman -C /etc/mailman3/mailman.cfg start
> Starting Mailman's master runner
> /usr/bin/python3.4: can't open file '/var/lib/mailman/bin/master':
> [Errno 2] No such file or directory
>
> The files are installed in /var/lib/mailman3/bin, but bin_dir in
> /etc/mailman3/mailman.cfg points to /var/lib/mailman/bin ... both
> directories are wrong from my POV, it should probably be
> /usr/lib/mailman3 or something like that
>
> - Fixing this up leads to
>
> root@4ca9477a166c:~# /usr/bin/mailman -C /etc/mailman3/mailman.cfg start
> Starting Mailman's master runner
> Traceback (most recent call last):
> File "/var/lib/mailman3/bin/master", line 9, in <module>
> load_entry_point('mailman==3.0.0', 'console_scripts', 'master')()
> File "/usr/lib/python3/dist-packages/mailman/bin/master.py", line 536,
> in main
> with open(config.PID_FILE, 'w') as fp:
> FileNotFoundError: [Errno 2] No such file or directory:
> '/run/mailman3/master.pid'
>
> because the directory does not exist. Since you are shipping a systemd
> unit only you should probably ship a .tmpfile as well.
>
> I now have a running daemon. I haven't done anything with Mailman3 so
> far, so I need to read up on that first.
I did some further testing
- Mailman does not use /etc/mailman3/mailman.cfg as default config. So to each
mailman call a extra parameter or the environment variable
MAILMAN_CONFIG_FILE as to be added. If you forget this, mailman creates a
new instance one the fly under ./var (very annoying). I would be nice to
patch mailman to use the example configuration file by default.
- The default configuration uses postfix, needing postmap to run mailman
aliases (which is called automatically on mailman create). So the package
should recommend/suggests postfix.
I was now able to create a mailing list, subscribe with multiple users, send a
test message and get the answers by the other user. So base feature set
working :-)
Some other remarks to the package:
- The service should not be run as root. The package should create a own
user and the systemd service unit should to start mailman as that user.
- It would be good to add the next step to README.Debian (reconfigure postfix
etc. and uses the mailman executable to create lists ...). And add a note
that sqlite is used by default, that for some people might not be
appropriate for production installations.
- I prefer removing the tests files or moving them into a own binary packages,
as they are not needed on most installations.
- The documentation's raw rst files are currently installed; please run sphinx
during the build and ship the compiled files instead.
Thx for your work - I got a working mailman3 instance,
Malte Swart.
Attachment:
signature.asc
Description: This is a digitally signed message part.