1 # Copyright (C) 2008 by the Free Software Foundation, Inc.
3 # This file is part of GNU Mailman.
5 # GNU Mailman is free software: you can redistribute it and/or modify it under
6 # the terms of the GNU General Public License as published by the Free
7 # Software Foundation, either version 3 of the License, or (at your option)
10 # GNU Mailman is distributed in the hope that it will be useful, but WITHOUT
11 # ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
12 # FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for
15 # You should have received a copy of the GNU General Public License along with
16 # GNU Mailman. If not, see <http://www.gnu.org/licenses/>.
18 # This is the GNU Mailman configuration schema. It defines the default
19 # configuration options for the core system and plugins. It uses ini-style
20 # formats under the lazr.config regime to define all system configuration
21 # options. See <https://launchpad.net/lazr.config> for details.
24 # This address is the "site owner" address. Certain messages which must be
25 # delivered to a human, but which can't be delivered to a list owner (e.g. a
26 # bounce from a list owner), will be sent to this address. It should point to
28 site-owner: changeme@example.com
30 # This address is used as the from address whenever a message comes from some
31 # entity to which there is no natural reply recipient. Set this to a real
32 # human or to /dev/null. It will be appended with the host name of the list
33 # involved. This address must not bounce and it must not point to a Mailman
35 noreply-address: noreply
37 # Where all the runtime data will be kept. This directory must exist.
40 # The default language for this server.
43 # When allowing only members to post to a mailing list, how is the sender of
44 # the message determined? If this variable is set to Yes, then first the
45 # message's envelope sender is used, with a fallback to the sender if there is
46 # no envelope sender. Set this variable to No to always use the sender.
48 # The envelope sender is set by the SMTP delivery and is thus less easily
49 # spoofed than the sender, which is typically just taken from the From: header
50 # and thus easily spoofed by the end-user. However, sometimes the envelope
51 # sender isn't set correctly and this will manifest itself by postings being
52 # held for approval even if they appear to come from a list member. If you
53 # are having this problem, set this variable to No, but understand that some
54 # spoofed messages may get through.
55 use_envelope_sender: no
57 # Mail command processor will ignore mail command lines after designated max.
58 email_commands_max_lines: 10
62 # Define which process queue runners, and how many of them, to start.
64 # The full import path to the class for this queue runner.
65 class: mailman.queue.runner.Runner
67 # The directory path that this queue runner scans.
68 path: $VAR_DIR/qfiles/$name
70 # The number of parallel queue runners. This must be a power of 2.
73 # Whether to start this queue runner or not.
76 # The maximum number of restarts for this queue runner. When the runner exits
77 # because of an error or other unexpected problem, it is automatically
78 # restarted, until the maximum number of restarts has been reached.
81 # The sleep interval for the queue runner. It wakes up once every interval to
82 # process the files in its slice of the queue directory.
86 # Use this to set the Storm database engine URL. You generally have one
87 # primary database connection for all of Mailman. List data and most rosters
88 # will store their data in this database, although external rosters may access
89 # other databases in their own way. This string supports standard
90 # 'configuration' substitutions.
91 url: sqlite:///$DATA_DIR/mailman.db
95 # This defines various log settings. The options available are:
97 # - level -- Overrides the default level; this may be any of the
98 # standard Python logging levels, case insensitive.
99 # - format -- Overrides the default format string
100 # - datefmt -- Overrides the default date format string
101 # - path -- Overrides the default logger path. This may be a relative
102 # path name, in which case it is relative to Mailman's LOG_DIR,
103 # or it may be an absolute path name. You cannot change the
104 # handler class that will be used.
105 # - propagate -- Boolean specifying whether to propagate log message from this
106 # logger to the root "mailman" logger. You cannot override
107 # settings for the root logger.
109 # In this section, you can define defaults for all loggers, which will be
110 # prefixed by 'mailman.'. Use subsections to override settings for specific
111 # loggers. The names of the available loggers are:
113 # - archiver -- All archiver output
114 # - bounce -- All bounce processing logs go here
115 # - config -- Configuration issues
116 # - debug -- Only used for development
117 # - error -- All exceptions go to this log
118 # - fromusenet -- Information related to the Usenet to Mailman gateway
119 # - http -- Internal wsgi-based web interface
120 # - locks -- Lock state changes
121 # - mischief -- Various types of hostile activity
122 # - post -- Information about messages posted to mailing lists
123 # - qrunner -- qrunner start/stops
124 # - smtp -- Successful SMTP activity
125 # - smtp-failure -- Unsuccessful SMTP activity
126 # - subscribe -- Information about leaves/joins
127 # - vette -- Information related to admindb activity
128 format: %(asctime)s (%(process)d) %(message)s
129 datefmt: %b %d %H:%M:%S %Y
162 # The smtp logger defines additional options for handling the logging of each
163 # attempted delivery. These format strings specify what information is logged
164 # for every message, every successful delivery, every refused delivery and
165 # every recipient failure. To disable a status message, set the value to 'no'
166 # (without the quotes).
168 # These template strings accept the following set of substitution
169 # placeholders, if available.
171 # msgid -- the Message-ID of the message in question
172 # listname -- the fully-qualified list name
173 # sender -- the sender if available
174 # recip -- the recipient address if available, or the number of
175 # recipients being delivered to
176 # size -- the approximate size of the message in bytes
177 # seconds -- the number of seconds the operation took
178 # refused -- the number of refused recipients
179 # smtpcode -- the SMTP success or failure code
180 # smtpmsg -- the SMTP success or failure message
182 every: [$msgid] smtp to $listname for $recip recips, completed in $time seconds
183 success: [$msgid] post to $listname from $sender, $size bytes
184 refused: [$msgid] post to $listname from $sender, $size bytes, $refused failures
185 failure: [$msgid] delivery to $recip failed with code $smtpcode, $smtpmsg
194 # Site-wide domain defaults. To configure an individual
195 # domain, add a [domain.example_com] section with the overrides.
197 # This is the host name for the email interface.
198 email_host: example.com
199 # This is the base url for the domain's web interface. It must include the
201 base_url: http://example.com
202 # The contact address for this domain. This is advertised as the human to
203 # contact when users have problems with the lists in this domain.
204 contact_address: postmaster@example.com
205 # A short description of this domain.
206 description: An example domain.
210 # Template for language definitions. The section name must be [language.xx]
211 # where xx is the 2-character ISO code for the language.
213 # The English name for the language.
214 description: English (USA)
215 # And the default character set for the language.
217 # Whether the language is enabled or not.
221 [spam.headers.template]
222 # This section defines basic header matching actions. Each spam.header
223 # section names a header to match (case-insensitively), a pattern to match
224 # against the header's value, and the chain to jump to when the match
227 # The header value should not include the trailing colon.
229 # The pattern is always matched with re.IGNORECASE.
231 # The chain to jump to if the pattern matches. Maybe be any existing chain
232 # such as 'discard', 'reject', 'hold', or 'accept'.
237 # The class defining the interface to the incoming mail transport agent.
238 incoming: mailman.mta.postfix.LMTP
240 # The class defining the interface to the outgoing mail transport agent.
241 outgoing: mailman.mta.direct.SMTPDirect
243 # How to connect to the outgoing MTA.
249 base_url: http://archive.example.com/
250 recipient: archive@archive.example.com