X-Git-Url: https://git.hcoop.net/hcoop/domtool2.git/blobdiff_plain/e9f528ab975ac28c16b2c370e69206a48f584d78..63ac3b82c1cd33605e62688cd97688a6dae3cb9c:/lib/mailman.dtl?ds=sidebyside diff --git a/lib/mailman.dtl b/lib/mailman.dtl index 21e3b49..f2158b7 100644 --- a/lib/mailman.dtl +++ b/lib/mailman.dtl @@ -4,31 +4,43 @@ extern val mailmanWebHost : domain -> [Domain]; {{Set the hostname of the web site for administration of mailing lists for this domain.}} -extern type mailman_web_node; +extern type mailman_node; {{Like web_node, but with the possibility of using some additional nodes set by the admins.}} -extern val mailman_web_node : mailman_web_node; +extern val mailman_node : mailman_node; {{The default location for Mailman web interfaces}} -extern val mailman_web_node_to_node : mailman_web_node -> node; +extern val mailman_node_to_node : mailman_node -> node; + +extern type mailman_place; +extern val mailman_place_default : mailman_node -> mailman_place; +extern val mailman_place : mailman_node -> your_ip -> mailman_place; +extern val mailman_place_to_web_node : mailman_place -> web_node; +extern val mailman_place_to_node : mailman_place -> node; +extern val mailman_place_to_ip : mailman_place -> ip; +{{Analogous to web_place, but based on mailman_nodes}} extern val mailmanVhost : host -> [Domain] - {MailmanWebNodes : [mailman_web_node], - SSL : ssl, - User : your_user}; + {MailmanPlaces : [mailman_place], + SSL : ssl, + User : your_user, + ServerAdmin : email}; {{Create an Apache virtual host to serve as the web interface for some Mailman lists.}} val mailman = \ host : (host) -> begin - dnsIP host (ip_of_node (mailman_web_node_to_node mailman_web_node)); - domainHost host; - mwh <- Hostname; - mailmanWebHost mwh; - mailmanVhost host where - MailmanWebNodes = [mailman_web_node]; - SSL = no_ssl - end; + let + domainHost host; + in + dnsIP host (ip_of_node (mailman_node_to_node mailman_node)); + mwh <- Hostname; + mailmanWebHost mwh; + mailmanVhost host where + MailmanPlaces = [mailman_place_default mailman_node]; + SSL = no_ssl + end + end end; {{The most common Mailman config, for when you want to have a virtual host of your domain dedicated to a Mailman interface. Provide the name of that host (e.g.,