===== Install =====
==== apt install sympa 6.2.70 on ubuntu 24.04 ====
* Start with [[https://www.sympa.community/manual/install.html|the official installation docs using apt]]
* Then when that fails :-o
=== mysql ===
* with install ''dbconfig-common'' to set up DB using mysql just doesn't work.
* it didn't work for mailman and it didn't work here
* it Says "password doesn't match requirements" (which isn't true).
* you have to set up the DB yourself
sudo mysql -p -e "CREATE DATABASE IF NOT EXISTS sympa CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci; CREATE USER IF NOT EXISTS 'sympa'@'localhost' IDENTIFIED BY ''; GRANT ALL PRIVILEGES ON sympa.* TO 'sympa'@'localhost'; FLUSH PRIVILEGES;"
sudo bash -c 'cat >> /etc/sympa/sympa/sympa.conf <
db_name sympa
EOF'
=== nginx ===
//apparently standard setup is with Apache? But this works//
server {
listen 80;
server_name ;
return 301 https://$host$request_uri;
}
server {
listen 443 ssl;
server_name ;
ssl_certificate /etc/letsencrypt/live//fullchain.pem;
ssl_certificate_key /etc/letsencrypt/live///privkey.pem;
root /usr/lib/cgi-bin/sympa;
access_log /var/log/nginx/sympa-access.log;
error_log /var/log/nginx/sympa-error.log;
location /static-sympa/ {
alias /usr/share/sympa/static_content/;
access_log off;
}
location /css-sympa/ {
alias /var/lib/sympa/css/;
access_log off;
}
location /pictures-sympa/ {
alias /var/lib/sympa/pictures/;
access_log off;
}
location / {
include fastcgi_params;
fastcgi_pass unix:/run/sympa/wwsympa.socket;
fastcgi_param SCRIPT_FILENAME /usr/lib/cgi-bin/sympa/wwsympa.fcgi;
fastcgi_param SCRIPT_NAME "";
fastcgi_param PATH_INFO $uri;
}
}
=== Postfix ===
== main.cf ==
* Postfix tries to run some sympa stuff as an unprivileged user. Add this line to have it run as the sympa user instead:
sympa unix - n n - - pipe
flags=R user=sympa argv=/usr/lib/sympa/bin/queue ${recipient}
* add this to the ''mydestination'' line: ''''
* add ''hash:/etc/postfix/transport'' to the ''transport_maps'' line
* add ''hash:/etc/sympa/aliases.sympa.postfix'' to ''alias_maps''
* add ''alias_database = hash:/etc/sympa/aliases.sympa.postfix''
* suggestion (for sending larger emails): ''message_size_limit = 41943040''
== master.cf ==
sympa unix - n n - - pipe
flags=R user=sympa argv=/usr/lib/sympa/bin/queue ${recipient}
=== /etc/sympa/sympa/sympa.conf ===
wwsympa_url
# 1. Add email address text when list is created
alias_manager /usr/lib/sympa/bin/alias_manager.pl
# 2. compile email address text and add to db
aliases_program /usr/sbin/postalias
# 3. file Location for text and db
sendmail_aliases /etc/sympa/aliases.sympa.postfix
# If you have trouble change from default log_level 1
log_level 2
==== Notes ====
* config is at ''/etc/sympa/sympa/sympa.conf''
* when reading official documentation ''$SYSCONFDIR'' is ''/etc/sympa''
* when reading official documentation ''$LIBEXECDIR'' is ''/usr/share/sympa/bin''
==== Troubleshooting ====
* sympa logs go to ''syslog''. View in realtime: ''sudo tail -f /var/log/syslog | grep --line-buffered -Ei 'sympa|wwsympa''
===== Usage =====
==== Customizing Templates ====
Sympa uses a "Cascading" template system. It looks for a template (like welcome.tt2) in this specific order:
- List Level: ''/var/lib/sympa/list_data/[list_name]/mail_tt2/'' (Highest Priority)
- Robot/Domain Level: ''/etc/sympa/[domain]/mail_tt2/''
- Site Level: ''/etc/sympa/mail_tt2/''
- Default: ''/usr/share/sympa/default/mail_tt2/'' (Lowest Priority)
To customize a template for one specific list, copy the default file into that list's folder and edit it there.