apache: enable php 7.4 support
[hcoop/domtool2.git] / lib / mailman.dtl
1 {{Mailman mailing list system}}
2
3 extern val mailmanWebHost : domain -> [Domain];
4 {{Set the hostname of the web site for administration of mailing lists for this
5 domain.}}
6
7 extern type mailman_node;
8 {{Like <tt>web_node</tt>, but with the possibility of using some additional
9 nodes set by the admins.}}
10
11 extern val mailman_node : mailman_node;
12 {{The default location for Mailman web interfaces}}
13
14 extern val mailman_node_to_node : mailman_node -> node;
15
16 extern type mailman_place;
17 extern val mailman_place_default : mailman_node -> mailman_place;
18 extern val mailman_place : mailman_node -> your_ip -> your_ipv6 -> mailman_place;
19 extern val mailman_place_to_web_node : mailman_place -> web_node;
20 extern val mailman_place_to_node : mailman_place -> node;
21 extern val mailman_place_to_ip : mailman_place -> ip;
22 extern val mailman_place_to_ipv6 : mailman_place -> ipv6;
23 {{Analogous to <tt>web_place</tt>, but based on <tt>mailman_node</tt>s}}
24
25 extern val mailmanVhost : host -> [Domain]
26 {MailmanPlaces : [mailman_place],
27 SSL : ssl,
28 MailmanForceSSL : bool,
29 User : your_user,
30 ServerAdmin : email};
31 {{Create an Apache virtual host to serve as the web interface for some Mailman
32 lists.}}
33
34 val mailman = \ host : (host) -> begin
35 let
36 domainHost host;
37 in
38 dnsIP host (ip_of_node (mailman_node_to_node mailman_node));
39 dnsIPv6 host (ipv6_of_node (mailman_node_to_node mailman_node));
40 mwh <- Hostname;
41 mailmanWebHost mwh;
42 mailmanVhost host where
43 MailmanPlaces = [mailman_place_default mailman_node];
44 end
45 end
46 end;
47 {{The most common Mailman config, for when you want to have a virtual host of your
48 domain dedicated to a Mailman interface. Provide the name of that host (e.g.,
49 "lists") to this directive, and it will take care of the rest.}}