mailman: updated rc script and dropped old README

This commit is contained in:
Tim Biermann 2024-02-25 11:00:34 +01:00
parent 11c811665e
commit e33533936b
Signed by: tb
GPG Key ID: 42F8B4E30B673606
3 changed files with 10 additions and 106 deletions

View File

@ -1,6 +1,6 @@
untrusted comment: verify with /etc/ports/contrib.pub
RWSagIOpLGJF39mTPdSPiPM8r5DPu1rZpnHj4o29y8uRIvg3t8pzTBQNA8BfQtw3dX/C9Rnm9WmtmbBf4IGzTAcxpmxiH4gOMQA=
RWSagIOpLGJF371tbjKopPkFHTbZwylB0j2uhZ3xXV/yFZF1s9AQZi7qzJq9dCAgmbf4YNPqMu8GFBHYq+/Kq/Gz5TPzlKiP9Aw=
SHA256 (Pkgfile) = cc7146d73ecda81c438c476b28c13a1ebe9f1f60dad68b543241fcdca613a08b
SHA256 (.footprint) = 48f5c0149fa51ab0798056f107e6709f0c38165fa1af35f1072b85c66f7cf15c
SHA256 (mailman-v3.3.9.tar.bz2) = f96de9f54c8d513b4c1dd0bae69a9b511d7f515a04c267b7231ba4bedaaafa48
SHA256 (mailman.rc) = b3fc612c058b99153f6168fd6b98ab210f5e6edcf02fd2f0180f94dd541fe17e
SHA256 (mailman.rc) = 511c9d690d5c910d3f1f19e10e9054bb96bf62c64d6abe761ed0f843aca27abf

View File

@ -1,87 +0,0 @@
README for mailman
PRE-INSTALL
Execute the pre-install script to add a new mailman user/group
POST-INSTALL
Mailman required the creation of a list on the server called 'mailman'.
You should create it manually to avoid this message:
'Site list is missing: mailman'
Follow NOTES section in this README file for more information.
NOTES
Configure options:
$ less /usr/lib/mailman/Mailman/Defaults.py
$ sudo vim /etc/mailman/mm_cfg.py
Configure aliases for Postfix MTA:
$ sudo /usr/lib/mailman/bin/genaliases
$ sudo vim /etc/postfix/main.cf
[...]
alias_maps = hash:/etc/postfix/aliases, hash:/etc/mailman/aliases, ...
[...]
$ sudo newaliases
To create a new list:
$ sudo /usr/lib/mailman/bin/newlist <list_name>
To check perimissions:
$ sudo /usr/lib/mailman/bin/check_perms -v
Maybe after create your first list you need to setup some directories/files:
$ sudo chown mailman:mailman /etc/mailman/aliases*
$ sudo chmod 660 /etc/mailman/aliases.db
To configure httpd settings (without vhosts) append this to your httpd.conf:
[...]
ScriptAlias /mailman/ /usr/lib/mailman/cgi-bin/
<Directory "/usr/lib/mailman/cgi-bin/">
AllowOverride None
Options ExecCGI
Order allow,deny
Allow from all
</Directory>
Alias /pipermail/ /var/lib/mailman/archives/public/
<Directory "/var/lib/mailman/archives/public">
Options +FollowSymLinks
Order allow,deny
Allow from all
</Directory>
# Uncomment the following line, replacing www.example.com with your server's
# name, to redirect queries to /mailman to the listinfo page (recommended).
RedirectMatch ^/mailman[/]*$ http://www.example.com/mailman/listinfo
[...]
IMPORTANT: If archives/private is not o+x, then the owner of archives/private
must be the web server user whatever that is - i.e. the web server user must be
able to search in archives/private.
$ ls -ld /var/lib/mailman/archives/p*
drwxrws--x 6 root mailman 4096 Jan 12 17:02 /var/lib/mailman/archives/private
drwxrwsr-x 2 root mailman 4096 Jan 12 17:02 /var/lib/mailman/archives/public
The owner (root) is not important. the group is Mailman's group and may or may
not be 'mailman' (e.g. on a debian/ubuntu package install, it is 'list')
For more information:
http://www.gnu.org/software/mailman/mailman-install/node9.html

View File

@ -4,39 +4,30 @@
#
SSD=/sbin/start-stop-daemon
PROG=/usr/lib/mailman/bin/mailmanctl
PID=/run/mailman/master-qrunner.pid
fix_log_perms() {
local errorlog="/var/log/mailman/error"
if [ ! -f $errorlog ]; then
touch $errorlog
chown root:mailman $errorlog
chmod 775 $errorlog
fi
}
PROG=/usr/bin/mailman
PID=/run/mailman/master.pid
USER=mailman
case $1 in
start)
fix_log_perms
if [ ! -e /run/mailman ]; then
mkdir -p /run/mailman
fi
$SSD --start --pidfile $PID --exec $PROG -- start
$SSD --start -c $USER --pidfile $PID --exec $PROG -- start
;;
stop)
$SSD --start --pidfile $PID --exec $PROG -- stop
$SSD --stop --retry 10 --pidfile $PID
$SSD --start -c $USER --pidfile $PID --exec $PROG -- stop
$SSD --stop -c $USER --retry 10 --pidfile $PID
;;
restart)
$0 stop
$0 start
;;
reload)
$SSD --start --pidfile $PID --exec $PROG -- -q restart
$SSD --start -c $USER --pidfile $PID --exec $PROG -- restart
;;
status)
$SSD --status --pidfile $PID
$SSD --status -u $USER -c $USER --pidfile $PID
case $? in
0) echo "$PROG is running with pid $(cat $PID)" ;;
1) echo "$PROG is not running but the pid file $PID exists" ;;