Skip to content

Latest commit

 

History

History
115 lines (90 loc) · 4.13 KB

basics-configuration.md

File metadata and controls

115 lines (90 loc) · 4.13 KB
title prev up next
Configuration hierarchy
basics-roles.md
../customize.md#customization-basics
basics-list-config.md

Configuration hierarchy

Configuration of Sympa may be classified into multiple scopes: "List", "mail domain", "site" and distribution default.

Note

  • In earlier documentations, a term "robot" was chosen to refer to "mail domain" scope. If you see this word in the other place of this document, please replace it with "mail domain".

Configuration files

Location

To find a configuration file, Sympa searches following four directories in order, i.e. from narrower to wider scopes:

Once desired file is found in a directory, Sympa no longer does search subsequent directories. By this hierarchical system, configuration applied to wider scopes can be customized for particular domains and/or lists.

For example, given following edit_list.conf configuration files placed:

  • $EXPLDIR/mail.example.org/list1/edit_list.conf
  • $SYSCONFDIR/mail.example.org/edit_list.conf
  • $SYSCONFDIR/edit_list.conf
  • $DEFAULTDIR/edit_list.conf

On a list [email protected], the first file will be used. However, on the other lists of mail.example.org (e.g. [email protected]), the second file will be used. On the lists of the other domain (e.g. [email protected]), the third file will be used. The last file, distribution default, will never be used in this example, because the other file supersedes it.

Note

  • On list scope, canonical path of configuration is:

    $EXPLDIR/mail domain name/list name/

    However, by historical reason, the lists of primary domain (the mail domain defined by domain parameter in sympa.conf) also allows the path in a style:

    $EXPLDIR/list name/.

    The former style is recommended. The latter style may be deprecated by the future version of Sympa.

Exceptions:

  • Some configuration files are not available in "list" and/or "mail domain" scopes. For example:

    • auth.conf is available only in "mail domain" or "site" scope;
    • charset.conf is available only in "site" scope.

    See also documentation on each file.

  • Most of templates are classified further by subdirectories: See "Templates". Task model files are alike: See "Tasks".

Changing configuration files

When you customize configuration files, don't edit files under $DEFAULTDIR directly. Changes on the files under this directory will be overwritten by new version during upgrade process.

Instead, you should copy files under $DEFAULTDIR directory into the directory of appropriate scope (see previous section), then edit these copies.

Configuration parameters

Main configuration files have different names by each scope:

  • $EXPLDIR/list path/config --- List configuration
  • $SYSCONFDIR/mail domain name/robot.conf --- Mail domain configuration
  • $SYSCONFDIR/sympa.conf --- Site configuration
  • Distribution defaults of parameters are defined in the source code of Sympa.

These files will not override the others. Instead, several parameters in these files override parameters in wider scopes by each. See documentation on parameters in sympa.conf, robot.conf and config files.