-
Notifications
You must be signed in to change notification settings - Fork 48
Server configuration: MLMMJ (Mailing Lists)
runout-at edited this page Aug 29, 2024
·
5 revisions
- https://github.com/vexim/vexim2/issues/282
- https://codeberg.org/mlmmj/mlmmj/releases/tag/RELEASE_1_4_0
- https://codeberg.org/mlmmj/mlmmj/issues/3 and regarding the mailing list: https://marc.info/?l=mlmmj
- https://codeberg.org/mlmmj/mlmmj/src/branch/master/contrib https://gitlab.com/runout/mlmmjapi
- /etc/exim4/conf.d/main/00_mlmmj
MLMMJ_ENABLED = yes
MLMMJ_HOME = /var/spool/mlmmj
domainlist mlmmj_domains = lists.example.com : lists.example.net : lists.example.org
delay_warning_condition = ${if match_domain{$domain_data}{+mlmmj_domains}{no}{yes}}
- /etc/exim4/conf.d/router/050_mlmmj
.ifdef MLMMJ_ENABLED
mlmmj_router:
debug_print = "R: mlmmj_router for ${lc:$local_part}@$domain_data"
driver = accept
local_parts = ${lookup {${lc:$local_part}}dsearch{MLMMJ_HOME/$domain_data}}
domains = +mlmmj_domains
#require_files = MLMMJ_HOME/$domain_data/${lc:$local_part_data}
# Use this instead, if you don't want to give Exim rx rights to mlmmj spool.
# Exim will then spawn a new process running under the UID of "mlmmj".
require_files = mlmmj:MLMMJ_HOME/$domain_data/$local_part_data
local_part_suffix = +*
local_part_suffix_optional
headers_remove = Delivered-To
headers_add = Delivered-To: ${lc:$local_part_data}$local_part_suffix@$domain_data
headers_remove = Precedence
headers_add = Precedence: list
transport = mlmmj_transport
.endif
- /etc/exim4/conf.d/transport/30_mlmmj
mlmmj_transport:
debug_print = "R: mlmmj_transport for ${lc:$local_part_data}@$domain_data"
driver = pipe
return_path_add
user = mlmmj
group = mlmmj
home_directory = MLMMJ_HOME/$domain_data
current_directory = MLMMJ_HOME/$domain_data
command = /usr/bin/mlmmj-amime-receive -F -L MLMMJ_HOME/$domain_data/${lc:$local_part_data}
This transport uses the amime extension from https://codeberg.org/mlmmj/mlmmj/src/branch/master/contrib/amime-receive
On a system without systemd:
- /etc/cron.d/mlmmj
0 */2 * * * root /usr/bin/test -x /usr/bin/mlmmj-maintd && find /var/spool/mlmmj -mindepth 1 -maxdepth 1 -type d -exec /usr/bin/mlmmj-maintd -F -d {} \;