ConfDef.pm 57.5 KB
Newer Older
1
2
3
4
# -*- indent-tabs-mode: nil; -*-
# vim:ft=perl:et:sw=4
# $Id$

5
# Sympa - SYsteme de Multi-Postage Automatique
6
7
8
9
#
# Copyright (c) 1997, 1998, 1999 Institut Pasteur & Christophe Wolfhugel
# Copyright (c) 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005,
# 2006, 2007, 2008, 2009, 2010, 2011 Comite Reseau des Universites
10
# Copyright (c) 2011, 2012, 2013, 2014, 2015, 2016, 2017 GIP RENATER
11
12
13
# Copyright 2017 The Sympa Community. See the AUTHORS.md file at the top-level
# directory of this distribution and at
# <https://github.com/sympa-community/sympa.git>.
14
15
16
17
18
19
20
21
22
23
24
25
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation; either version 2 of the License, or
# (at your option) any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
26
# along with this program.  If not, see <http://www.gnu.org/licenses/>.
27

28
package Sympa::ConfDef;
29

30
31
use strict;
use warnings;
32

33
use Sympa::Constants;
34
35

our @params = (
36
    {'gettext_id' => 'Site customization'},
37

38
    {   'name'       => 'domain',
39
        'gettext_id' => 'Main robot hostname',
40
41
42
43
        'sample'     => 'domain.tld',
        'edit'       => '1',
        'file'       => 'sympa.conf',
        'vhost' => '1',    #FIXME:not fully implemented yet.
44
    },
45
    {   'name'     => 'host',
46
47
48
        'optional' => 1,
        'vhost'    => '1',
    },
49
50
51
52
53
54
    {   'name'            => 'email',
        'default'         => 'sympa',
        'gettext_id'      => 'Local part of sympa email address',
        'vhost'           => '1',
        'edit'            => '1',
        'file'            => 'sympa.conf',
55
        'gettext_comment' => 'Effective address will be [EMAIL]@[HOST]',
56
    },
57
58
    {   'name'       => 'gecos',
        'default'    => 'SYMPA',
59
        'gettext_id' => 'Gecos for service mail sent by Sympa itself',
60
61
62
63
64
        'vhost'      => '1',
        'edit'       => '1',
        'file'       => 'sympa.conf',
        'gettext_comment' =>
            'This parameter is used for display name in the "From:" header',
65
    },
66
67
    {   'name'       => 'listmaster',
        'sample'     => 'your_email_address@domain.tld',
68
        'gettext_id' => 'Listmasters email list comma separated',
69
70
71
72
73
        'file'       => 'sympa.conf',
        'vhost'      => '1',
        'edit'       => '1',
        'gettext_comment' =>
            'Sympa will associate listmaster privileges to these email addresses (mail and web interfaces). Some error reports may also be sent to these addresses.',
74
    },
75
76
    {   'name'       => 'listmaster_email',
        'default'    => 'listmaster',
77
        'gettext_id' => 'Local part of listmaster email address',
78
        'vhost'      => '1',
79
    },
80
81
    {   'name'       => 'wwsympa_url',
        'sample'     => 'http://host.domain.tld/sympa',
82
        'gettext_id' => 'URL of main Web page',
83
84
85
        'vhost'      => '1',
        'file'       => 'sympa.conf',
        'edit'       => '1',
86
    },
87
    {   'name'     => 'soap_url',
88
        'optional' => '1',
89
        'vhost'    => '1',
90
    },
91
92
93
94
95
96
97
98
    {   'name'            => 'process_archive',
        'default'         => 'off',
        'gettext_id'      => 'Store distributed messages into archive',
        'gettext_comment' => 'This setting can be overridden by each list',
        'vhost'           => '1',
        'file'            => 'sympa.conf',
        'edit'            => '1',
    },
99
100
101
    {   'name'    => 'voot_feature',
        'default' => 'off',
        'file'    => 'sympa.conf',
102
    },
103
104
105
106
    {   'name'    => 'max_wrong_password',
        'default' => '19',
        'vhost'   => '1',
        'file'    => 'sympa.conf',
107
    },
108
109
110
    {   'name'    => 'spam_protection',
        'default' => 'javascript',
        'vhost'   => '1',
111
    },
112
113
114
    {   'name'    => 'web_archive_spam_protection',
        'default' => 'cookie',
        'vhost'   => '1',
115
    },
116
    {   'name'    => 'color_0',
117
        'default' => '#F7F7F7',    # very light grey use in tables,
118
119
        'vhost'   => '1',
        'db'      => 'db_first',
120
    },
121
    {   'name'    => 'color_1',
122
        'default' => '#222222',    # main menu button color,
123
124
        'vhost'   => '1',
        'db'      => 'db_first',
125
    },
126
    {   'name'    => 'color_2',
127
        'default' => '#004B94',    # font color,
128
129
        'vhost'   => '1',
        'db'      => 'db_first',
130
    },
131
    {   'name'    => 'color_3',
132
        'default' => '#5E5E5E',    # top boxe and footer box bacground color,
133
134
        'vhost'   => '1',
        'db'      => 'db_first',
135
    },
136
    {   'name'    => 'color_4',
137
        'default' => '#4c4c4c',    #  page backgound color,
138
139
        'vhost'   => '1',
        'db'      => 'db_first',
140
    },
141
    {   'name'    => 'color_5',
142
        'default' => '#0090E9',
143
144
        'vhost'   => '1',
        'db'      => 'db_first',
145
    },
146
    {   'name'    => 'color_6',
147
        'default' => '#005ab2',    # list menu current button,
148
149
        'vhost'   => '1',
        'db'      => 'db_first',
150
    },
151
    {   'name'    => 'color_7',
152
        'default' => '#fff',       # errorbackground color,
153
154
        'vhost'   => '1',
        'db'      => 'db_first',
155
    },
156
    {   'name'    => 'color_8',
157
        'default' => '#f2f6f9',
158
159
        'vhost'   => '1',
        'db'      => 'db_first',
160
    },
161
    {   'name'    => 'color_9',
162
        'default' => '#bfd2e1',
163
164
        'vhost'   => '1',
        'db'      => 'db_first',
165
    },
166
    {   'name'    => 'color_10',
167
        'default' => '#983222',    # inactive button,
168
169
        'vhost'   => '1',
        'db'      => 'db_first',
170
    },
171
    {   'name'    => 'color_11',
172
        'default' => '#66aaff',
173
174
        'vhost'   => '1',
        'db'      => 'db_first',
175
    },
176
    {   'name'    => 'color_12',
177
        'default' => '#FFE7E7',
178
179
        'vhost'   => '1',
        'db'      => 'db_first',
180
    },
181
    {   'name'    => 'color_13',
182
        'default' => '#f48A7b',    # input backgound  | transparent,
183
184
        'vhost'   => '1',
        'db'      => 'db_first',
185
    },
186
    {   'name'    => 'color_14',
187
        'default' => '#ff9',
188
189
        'vhost'   => '1',
        'db'      => 'db_first',
190
    },
191
    {   'name'    => 'color_15',
192
        'default' => '#fe57a1',
193
194
        'vhost'   => '1',
        'db'      => 'db_first',
195
    },
196
197
198
199
    {   'name'    => 'dark_color',
        'default' => 'silver',
        'vhost'   => '1',
        'db'      => 'db_first',
200
    },
201
202
203
204
    {   'name'    => 'light_color',
        'default' => '#aaddff',
        'vhost'   => '1',
        'db'      => 'db_first',
205
    },
206
207
208
209
    {   'name'    => 'text_color',
        'default' => '#000000',
        'vhost'   => '1',
        'db'      => 'db_first',
210
    },
211
212
213
214
    {   'name'    => 'bg_color',
        'default' => '#ffffcc',
        'vhost'   => '1',
        'db'      => 'db_first',
215
    },
216
217
218
219
    {   'name'    => 'error_color',
        'default' => '#ff6666',
        'vhost'   => '1',
        'db'      => 'db_first',
220
    },
221
222
223
224
    {   'name'    => 'selected_color',
        'default' => 'silver',
        'vhost'   => '1',
        'db'      => 'db_first',
225
    },
226
227
228
229
    {   'name'    => 'shaded_color',
        'default' => '#66cccc',
        'vhost'   => '1',
        'db'      => 'db_first',
230
    },
231
    {   'name'     => 'logo_html_definition',
232
        'optional' => '1',
233
        'vhost'    => '1',
234
    },
235
    {   'name'     => 'favicon_url',
236
        'optional' => '1',
237
238
        'vhost'    => '1',
        'optional' => '1',
239
    },
240
    {   'name'     => 'main_menu_custom_button_1_title',
241
        'optional' => '1',
242
        'vhost'    => '1',
243
    },
244
    {   'name'     => 'main_menu_custom_button_1_url',
245
        'optional' => '1',
246
        'vhost'    => '1',
247
    },
248
    {   'name'     => 'main_menu_custom_button_1_target',
249
        'optional' => '1',
250
        'vhost'    => '1',
251
    },
252
    {   'name'     => 'main_menu_custom_button_2_title',
253
        'optional' => '1',
254
        'vhost'    => '1',
255
    },
256
    {   'name'     => 'main_menu_custom_button_2_url',
257
        'optional' => '1',
258
        'vhost'    => '1',
259
    },
260
    {   'name'     => 'main_menu_custom_button_2_target',
261
        'optional' => '1',
262
        'vhost'    => '1',
263
    },
264
    {   'name'     => 'main_menu_custom_button_3_title',
265
        'optional' => '1',
266
        'vhost'    => '1',
267
    },
268
    {   'name'     => 'main_menu_custom_button_3_url',
269
        'optional' => '1',
270
        'vhost'    => '1',
271
    },
272
    {   'name'     => 'main_menu_custom_button_3_target',
273
        'optional' => '1',
274
        'vhost'    => '1',
275
    },
276
    {   'name'     => 'css_path',
277
        'optional' => '1',
278
        'vhost'    => '1',
279
    },
280
    {   'name'     => 'css_url',
281
        'optional' => '1',
282
        'vhost'    => '1',
283
    },
284
285
286
    {   'name'    => 'static_content_path',
        'default' => Sympa::Constants::STATICDIR,
        'gettext_id' =>
287
            'Directory for storing static contents (CSS, members pictures, documentation) directly delivered by HTTP server',
288
289
290
        'vhost' => '1',
        'edit'  => '1',
        'file'  => 'sympa.conf',
291
    },
292
293
294
295
296
297
298
    {   'name'    => 'static_content_url',
        'default' => '/static-sympa',
        'gettext_id' =>
            'URL mapped with the static_content_path directory defined above',
        'vhost' => '1',
        'edit'  => '1',
        'file'  => 'sympa.conf',
299
    },
300
301
    {   'name'    => 'pictures_feature',
        'default' => 'on',
302
    },
303
304
305
    {   'name'    => 'pictures_max_size',
        'default' => 102400,                ## 100Kb,
        'vhost'   => '1',
306
    },
307
308
309
310
311
312
313
    {   'name'   => 'cookie',
        'sample' => '123456789',
        'gettext_id' =>
            'Secret used by Sympa to make MD5 fingerprint in web cookies secure',
        'file' => 'sympa.conf',
        'gettext_comment' =>
            'Should not be changed ! May invalid all user password',
314
        'optional' => '1',
315
    },
316
317
    {   'name'       => 'create_list',
        'default'    => 'public_listmaster',
318
        'gettext_id' => 'Who is able to create lists',
319
320
321
322
323
        'vhost'      => '1',
        'file'       => 'sympa.conf',
        'edit'       => '1',
        'gettext_comment' =>
            'This parameter is a scenario, check sympa documentation about scenarios if you want to define one',
324
        'scenario' => '1',
325
    },
326
327
    {   'name'     => 'global_remind',
        'default'  => 'listmaster',
328
        'scenario' => '1',
329
    },
330
331
332
    {   'name'    => 'allow_subscribe_if_pending',
        'default' => 'on',
        'vhost'   => '1',
333
    },
334
335
336
    {   'name' => 'custom_robot_parameter',
        'gettext_id' =>
            'Used to define a custom parameter for your server. Do not forget the semicolon between the param name and the param value.',
337
338
339
340
        'vhost'    => '1',
        'file'     => 'sympa.conf',
        'multiple' => '1',
        'optional' => '1',
341
    },
342

343
    {'gettext_id' => 'Directories'},
344

345
346
    {   'name'       => 'home',
        'default'    => Sympa::Constants::EXPLDIR,
347
        'gettext_id' => 'Directory containing mailing lists subdirectories',
348
349
        'file'       => 'sympa.conf',
        'edit'       => '1',
350
    },
351
352
353
354
355
    {   'name'    => 'etc',
        'default' => Sympa::Constants::SYSCONFDIR,
        'gettext_id' =>
            'Directory for configuration files; it also contains scenari/ and templates/ directories',
        'file' => 'sympa.conf',
356
    },
357

358
    {'gettext_id' => 'System related'},
359

360
361
362
363
364
    {   'name'            => 'syslog',
        'default'         => 'LOCAL1',
        'gettext_id'      => 'Syslog facility for sympa',
        'file'            => 'sympa.conf',
        'edit'            => '1',
365
        'gettext_comment' => 'Do not forget to edit syslog.conf',
366
    },
367
368
369
370
371
    {   'name'            => 'log_level',
        'default'         => '0',
        'gettext_id'      => 'Log verbosity',
        'vhost'           => '1',
        'file'            => 'sympa.conf',
372
        'gettext_comment' => '0: normal, 2,3,4: for debug',
373
    },
374
375
    {   'name'       => 'log_socket_type',
        'default'    => 'unix',
376
        'gettext_id' => 'Communication mode with syslogd (unix | inet)',
377
        'file'       => 'sympa.conf',
378
        'edit'       => '1',
379
    },
380
381
382
##    {
##        'name'     => 'pidfile',
##        'default'  => Sympa::Constants::PIDDIR . '/sympa.pid',
383
##        'gettext_id' => 'File containing Sympa PID while running',
384
##        'file'     => 'sympa.conf',
385
386
##        'gettext_comment' =>
##        'Sympa also locks this file to ensure that it is not running more than once. Caution: user sympa need to write access without special privilege.',
387
388
389
390
391
392
393
394
395
396
397
398
399
400
##    },
##    {
##        'name'     => 'pidfile_distribute',
##        'default'  => Sympa::Constants::PIDDIR . '/sympa-distribute.pid',
##        'file'     => 'sympa.conf',
##    },
##    {
##        'name'     => 'pidfile_creation',
##        'default'  => Sympa::Constants::PIDDIR . '/sympa-creation.pid',
##        'file'     => 'sympa.conf',
##    },
##    {
##        'name'     => 'task_manager_pidfile',
##        'default'  => Sympa::Constants::PIDDIR . '/task_manager.pid',
401
##        'gettext_id' => 'File containing task_manager PID while running',
402
403
##        'file'     => 'wwsympa.conf',
##    },
404
    {   'name'     => 'log_condition',
405
406
407
        'optional' => '1',
        'vhost'    => '1',
        'file'     => 'wwsympa.conf',
408
    },
409
    {   'name'     => 'log_module',
410
411
412
        'optional' => '1',
        'vhost'    => '1',
        'file'     => 'wwsympa.conf',
413
    },
414
415
    {   'name'       => 'umask',
        'default'    => '027',
416
        'gettext_id' => 'Umask used for file creation by Sympa',
417
        'file'       => 'sympa.conf',
418
    },
419

420
    {'gettext_id' => 'Sending related'},
421

422
423
    {   'name'       => 'sendmail',
        'default'    => '/usr/sbin/sendmail',
424
        'gettext_id' => 'Path to the MTA (sendmail, postfix, exim or qmail)',
425
426
427
428
429
430
431
432
        'file'       => 'sympa.conf',
        'edit'       => '1',
        'gettext_comment' =>
            'should point to a sendmail-compatible binary (eg: a binary named "sendmail" is distributed with Postfix)',
    },
    {   'name'    => 'sendmail_args',
        'default' => '-oi -odi -oem',
    },
433
434
435
#    {   'name'    => 'distribution_mode',
#        'default' => 'single',
#    },
436
437
438
439
440
441
    {   'name'    => 'maxsmtp',
        'default' => '40',
        'gettext_id' =>
            'Max. number of Sendmail processes (launched by Sympa) running simultaneously',
        'file' => 'sympa.conf',
        'gettext_comment' =>
442
            'Proposed value is quite low, you can rise it up to 100, 200 or even 300 with powerful systems.',
443
444
445
    },
    {   'name'    => 'merge_feature',
        'default' => 'off',
446
    },
447
448
    {   'name'    => 'automatic_list_removal',
        'default' => 'none',                     ## Can be 'if_empty'
449
        'vhost'   => '1',
450
    },
451
    {   'name'    => 'automatic_list_feature',
452
453
        'default' => 'off',
        'vhost'   => '1',
454
    },
455
456
457
    {   'name'     => 'automatic_list_creation',
        'default'  => 'public',
        'vhost'    => '1',
458
        'scenario' => '1',
459
    },
460
461
462
463
    {   'name' => 'automatic_list_families',
        'gettext_id' =>
            'Defines the name of the family the automatic lists are based on.',
        'file'     => 'sympa.conf',
464
        'optional' => '1',
465
        'vhost'    => '1',
466
    },
467
    #FIXME: Is it currently available?
468
469
470
471
    {   'name' => 'automatic_list_prefix',
        'gettext_id' =>
            'Defines the prefix allowing to recognize that a list is an automatic list.',
        'file'     => 'sympa.conf',
472
        'optional' => '1',
473
    },
474
475
476
477
    {   'name'    => 'log_smtp',
        'default' => 'off',
        'vhost'   => '1',
        'file'    => 'sympa.conf',
478
    },
479
480
481
482
483
484
485
486
487
    {   'name' => 'use_blacklist',
        'gettext_id' =>
            'comma separated list of operations for which blacklist filter is applied',
        'default' => 'send,create_list',
        'vhost'   => '1',
        'file'    => 'sympa.conf',
        'edit'    => '1',
        'gettext_comment' =>
            'Setting this parameter to "none" will hide the blacklist feature',
488
    },
489
490
491
492
493
494
    {   'name'     => 'reporting_spam_script_path',
        'optional' => '1',
        'gettext_id' =>
            'If set, when a list editor report a spam, this external script is run by wwsympa or sympa, the spam is sent into script stdin',
        'vhost' => '1',
        'file'  => 'sympa.conf',
495
    },
496
497
498
499
500
501
502
    {   'name' => 'max_size',
        'gettext_id' =>
            'Default maximum size (in bytes) for messages (can be re-defined for each list)',
        'default' => '5242880',      ## 5 MiB
        'vhost'   => '1',
        'file'    => 'sympa.conf',
        'edit'    => '1',
503
    },
504
505
    {   'name'    => 'misaddressed_commands',
        'default' => 'reject',
506
    },
507
508
    {   'name' => 'misaddressed_commands_regexp',
        'default' =>
509
            '((subscribe\s+(\S+)|unsubscribe\s+(\S+)|signoff\s+(\S+)|set\s+(\S+)\s+(mail|nomail|digest))\s*)',
510
    },
511
512
513
514
515
    {   'name'    => 'nrcpt',
        'default' => '25',
        'gettext_id' =>
            'Maximum number of recipients per call to Sendmail. The nrcpt_by_domain.conf file allows a different tuning per destination domain.',
        'file' => 'sympa.conf',
516
    },
517
518
519
520
521
    {   'name'    => 'avg',
        'default' => '10',
        'gettext_id' =>
            'Max. number of different domains per call to Sendmail',
        'file' => 'sympa.conf',
522
    },
523
524
    {   'name'    => 'alias_manager',
        'default' => Sympa::Constants::SBINDIR . '/alias_manager.pl',
525
    },
526
527
    {   'name'            => 'db_list_cache',
        'default'         => 'off',
528
        'gettext_comment' => 'Whether or not to cache lists in the database',
529
    },
530
531
532
533
534
    {   'name'    => 'sendmail_aliases',
        'default' => Sympa::Constants::SENDMAIL_ALIASES,
        'gettext_id' =>
            'Path of the file that contains all list related aliases',
        'vhost' => '1',
535
    },
536
    {   'name'    => 'aliases_program',
537
        'default' => 'newaliases',
538
539
540
        'gettext_id' =>
            'Program used to update alias database.  "makemap", "newaliases", "postalias", "postmap" or full path to custom program',
        'vhost' => '1',
541
    },
542
    {   'name'    => 'aliases_db_type',
543
        'default' => 'hash',
544
545
546
        'gettext_id' =>
            'Type of alias database.  "btree", "dbm", "hash" and so on.  Available when aliases_program is "makemap", "postalias" or "postmap"',
        'vhost' => '1',
547
    },
548
    {   'name'       => 'rfc2369_header_fields',
549
        'gettext_id' => 'Specify which rfc2369 mailing list headers to add',
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
        'default'    => 'help,subscribe,unsubscribe,post,owner,archive',
        'file'       => 'sympa.conf',
    },
    {   'name' => 'remove_headers',
        'gettext_id' =>
            'Specify header fields to be removed before message distribution',
        'default' =>
            'X-Sympa-To,X-Family-To,Return-Receipt-To,Precedence,X-Sequence,Disposition-Notification-To,Sender',
        'file' => 'sympa.conf',
    },
    {   'name'    => 'remove_outgoing_headers',
        'default' => 'none',
    },
    {   'name' => 'reject_mail_from_automates_feature',
        'gettext_id' =>
            'Reject mail from automates (crontab, etc) sent to a list?',
        'default' => 'on',
        'file'    => 'sympa.conf',
568
    },
569
570
    {   'name'    => 'ignore_x_no_archive_header_feature',
        'default' => 'off',
571
    },
572
573
574
    {   'name' => 'anonymous_header_fields',
        'default' =>
            'Authentication-Results,Disposition-Notification-To,DKIM-Signature,Injection-Info,Organisation,Organization,Original-Recipient,Originator,Path,Received,Received-SPF,Reply-To,Resent-Reply-To,Return-Receipt-To,X-Envelope-From,X-Envelope-To,X-Sender,X-X-Sender',
575
    },
576
    {   'name'     => 'list_check_smtp',
577
        'optional' => '1',
578
579
580
581
582
        'gettext_id' =>
            'SMTP server to which Sympa verify if alias with the same name as the list to be created',
        'vhost' => '1',
        'gettext_comment' =>
            'Default value is real FQDN of host. Set [HOST]:[PORT] to specify non-standard port.',
583
    },
584
585
586
    {   'name'    => 'list_check_suffixes',
        'default' => 'request,owner,editor,unsubscribe,subscribe',
        'vhost'   => '1',
587
    },
588
    {   'name'     => 'list_check_helo',
589
        'optional' => '1',
590
591
592
593
594
        'gettext_id' =>
            'SMTP HELO (EHLO) parameter used for alias verification',
        'vhost' => '1',
        'gettext_comment' =>
            'Default value is the host part of list_check_smtp parameter.',
595
    },
596
597
    {   'name'    => 'urlize_min_size',
        'default' => 10240,               ## 10 kiB,
sikeda's avatar
sikeda committed
598
        'vhost'   => '1',
599
    },
600
601
602
603
604
605
606
    {   'name'    => 'sender_headers',
        'default' => 'From',
        'sample'  => 'Resent-From,From,Return-Path',
        'gettext_id' =>
            'Header field name(s) used to determine sender of the messages',
        'gettext_comment' =>
            '"Return-Path" means envelope sender (a.k.a. "UNIX From") which will be alternative to sender of messages without "From" field.  "Resent-From" may also be inserted before "From", because some mailers add it into redirected messages and keep original "From" field intact.  In particular cases, "Return-Path" can not give right sender: several mail gateway products rewrite envelope sender and add original one as non-standard field such as "X-Envelope-From".  If that is the case, you might want to insert it in place of "Return-Path".',
607
    },
608

609
    {'gettext_id' => 'Bulk mailer'},
610

611
612
613
614
615
##    {
##        'name'     => 'pidfile_bulk',
##        'default'  => Sympa::Constants::PIDDIR . '/bulk.pid',
##        'file'     => 'sympa.conf',
##    },
616
    {   'name'       => 'sympa_packet_priority',
617
        'gettext_id' => 'Default priority for a packet to be sent by bulk.',
618
619
        'file'       => 'sympa.conf',
        'default'    => '5',
620
        'vhost'      => '1',
621
    },
622
623
624
625
626
    {   'name'    => 'bulk_fork_threshold',
        'default' => '1',
        'gettext_id' =>
            'Minimum number of packets in database before the bulk forks to increase sending rate',
        'file'            => 'sympa.conf',
627
        'gettext_comment' => '',
628
    },
629
630
631
632
633
    {   'name'    => 'bulk_max_count',
        'default' => '3',
        'gettext_id' =>
            'Max number of bulks that will run on the same server',
        'file'            => 'sympa.conf',
634
        'gettext_comment' => '',
635
    },
636
637
638
639
640
    {   'name'    => 'bulk_lazytime',
        'default' => '600',
        'gettext_id' =>
            'The number of seconds a slave bulk will remain running without processing a message before it spontaneously dies.',
        'file'            => 'sympa.conf',
641
        'gettext_comment' => '',
642
    },
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
    {   'name'    => 'bulk_sleep',
        'default' => '1',
        'gettext_id' =>
            "The number of seconds a bulk sleeps between starting a new loop if it didn't find a message to send.",
        'file' => 'sympa.conf',
        'gettext_comment' =>
            'Keep it small if you want your server to be reactive.',
    },
    {   'name'    => 'bulk_wait_to_fork',
        'default' => '10',
        'gettext_id' =>
            'Number of seconds a master bulk waits between two packets number checks.',
        'file' => 'sympa.conf',
        'gettext_comment' =>
            'Keep it small if you expect brutal increases in the message sending load.',
658
659
    },

660
    {'gettext_id' => 'Quotas'},
661

662
    {   'name'     => 'default_max_list_members',
663
664
        'default'  => '0',
        'optional' => '1',
665
666
667
668
        'gettext_id' =>
            'Default limit for the number of subscribers per list (0 means no limit)',
        'vhost' => '1',
        'file'  => 'sympa.conf',
669
670
    },

671
672
    {   'name'       => 'default_shared_quota',
        'optional'   => '1',
673
        'gettext_id' => 'Default disk quota for shared repository',
674
675
676
        'vhost'      => '1',
        'file'       => 'sympa.conf',
        'edit'       => '1',
677
    },
678
    {   'name'     => 'default_archive_quota',
679
        'optional' => '1',
680
    },
681

682
    {'gettext_id' => 'Spool related'},
683

684
685
    {   'name'       => 'spool',
        'default'    => Sympa::Constants::SPOOLDIR,
686
        'gettext_id' => 'Directory containing various specialized spools',
687
        'file'       => 'sympa.conf',
688
        'gettext_comment' => 'All spool are created at runtime by sympa.pl',
689
    },
690
691
    {   'name'       => 'queue',
        'default'    => Sympa::Constants::SPOOLDIR . '/msg',
692
        'gettext_id' => 'Directory for message incoming spool',
693
        'file'       => 'sympa.conf',
694
    },
695
696
697
698
#    {   'name'    => 'queuedistribute',
#        'default' => Sympa::Constants::SPOOLDIR . '/distribute',
#        'file'    => 'sympa.conf',
#    },
699
700
    {   'name'       => 'queuemod',
        'default'    => Sympa::Constants::SPOOLDIR . '/moderation',
701
        'gettext_id' => 'Directory for moderation spool',
702
        'file'       => 'sympa.conf',
703
    },
704
705
    {   'name'       => 'queuedigest',
        'default'    => Sympa::Constants::SPOOLDIR . '/digest',
706
        'gettext_id' => 'Directory for digest spool',
707
        'file'       => 'sympa.conf',
708
    },
709
710
    {   'name'       => 'queueauth',
        'default'    => Sympa::Constants::SPOOLDIR . '/auth',
711
        'gettext_id' => 'Directory for authentication spool',
712
        'file'       => 'sympa.conf',
713
    },
714
715
    {   'name'       => 'queueoutgoing',
        'default'    => Sympa::Constants::SPOOLDIR . '/outgoing',
716
        'gettext_id' => 'Directory for archive spool',
717
        'file'       => 'sympa.conf',
718
    },
719
720
    {   'name'       => 'queuesubscribe',
        'default'    => Sympa::Constants::SPOOLDIR . '/subscribe',
721
        'gettext_id' => 'Directory for subscription spool',
722
        'file'       => 'sympa.conf',
723
    },
724
725
    {   'name'       => 'queuetopic',
        'default'    => Sympa::Constants::SPOOLDIR . '/topic',
726
        'gettext_id' => 'Directory for topic spool',
727
        'file'       => 'sympa.conf',
728
    },
729
    ##{ queuesignoff: not yet implemented. },
730
731
    {   'name'       => 'queuebounce',
        'default'    => Sympa::Constants::SPOOLDIR . '/bounce',
732
        'gettext_id' => 'Directory for bounce incoming spool',
733
        'file'       => 'sympa.conf',
734
    },
735
736
    {   'name'       => 'queuetask',
        'default'    => Sympa::Constants::SPOOLDIR . '/task',
737
        'gettext_id' => 'Directory for task spool',
738
        'file'       => 'sympa.conf',
739
    },
740
741
    {   'name'       => 'queueautomatic',
        'default'    => Sympa::Constants::SPOOLDIR . '/automatic',
742
        'gettext_id' => 'Directory for automatic list creation spool',
743
        'file'       => 'sympa.conf',
744
    },
745
746
747
748
749
    {   'name'       => 'queuebulk',
        'default'    => Sympa::Constants::SPOOLDIR . '/bulk',
        'gettext_id' => 'Directory for message outgoing spool',
        'file'       => 'sympa.conf',
    },
750
751
    {   'name'            => 'sleep',
        'default'         => '5',
752
        'gettext_comment' => 'Must not be 0.',
753
    },
754
755
756
    {   'name'    => 'tmpdir',
        'default' => Sympa::Constants::SPOOLDIR . '/tmp',
        'gettext_id' =>
757
            'Temporary directory used by antivirus plugins, MHonArc etc.',
758
    },
759
    {   name    => 'viewmail_dir',
760
        default => Sympa::Constants::SPOOLDIR . '/viewmail',
761
        'gettext_id' =>
762
            'Directory containing HTML file generated by MHonArc while displaying messages other than archives',
763
        file => 'sympa.conf',
764
    },
765
766
    {   'name'    => 'clean_delay_queue',
        'default' => '7',
767
    },
768
769
    {   'name'    => 'clean_delay_queueoutgoing',
        'default' => '7',
770
    },
771
772
    {   'name'    => 'clean_delay_queuebounce',
        'default' => '7',
773
    },
774
775
    {   'name'    => 'clean_delay_queuemod',
        'default' => '30',
776
    },
777
778
    {   'name'    => 'clean_delay_queueauth',
        'default' => '30',
779
    },
780
781
    {   'name'    => 'clean_delay_queuesubscribe',
        'default' => '30',
782
    },
783
    ##{ clean_delay_queuesignoff: not yet implemented. },
784
785
    {   'name'    => 'clean_delay_queuetopic',
        'default' => '30',
786
    },
787
788
    {   'name'    => 'clean_delay_queueautomatic',
        'default' => '10',
789
    },
790
791
792
    {   'name'    => 'clean_delay_queuebulk',
        'default' => '7',
    },
793
794
795
    {   'name'    => 'clean_delay_queuedigest',
        'default' => '14',
    },
796
797
    {   'name'    => 'clean_delay_tmpdir',
        'default' => '7',
798
    },
799

800
    {'gettext_id' => 'Internationalization related'},
801

802
##    {
803
804
##        name    => 'localedir',</