Blob Blame History Raw
# Mailing Lists 

The CentOS Project hosts some public mailing lists that people can subscribe to.

It's hosted at [https://lists.centos.org](https://lists.centos.org) and on a sponsored node.

Due to the fact that it was created (back in time decision) on the centos.org MX machine , the lists are using the `@centos.org` domain, and so mailman is hosted *on* the main centos [mailserver](/apps/mailservers/), reason why the postfix ansible role will have the `postfix_mailman` [variable boolean](https://github.com/CentOS/ansible-role-postfix/blob/master/defaults/main.yml#L80) set to `True`, as it will automatically create the `<list>@centos.org` aliases on the host (needed to pass through mailman)

Some links:

  * [Upstream mailman 2](http://www.list.org/docs.html) documentation
  * [mailman](https://github.com/centos/ansible-role-mailman) ansible role

Worth knowing that to initially fight against spam registration, we added a [recaptcha](https://github.com/CentOS/ansible-role-mailman/blob/master/defaults/main.yml#L24) option to filter massive users registration.
You can find the applied patches (collaboration between Red Hat, Gnome and CentOS, all using the same applied patch for their mailman2 lists) in the mailman role

The CentOS Theme (written by the Artwork SIG) is also pushed from ansible role and some elements can be modified through `mailman_html_tpl_{head,bodystart,bodyclose}` variables. (also all coming from the ansible mailman role

## Some operations

### Adding a new list for a project/SIG

The Ansible mailman role supports adding lists automatically so it's just a matter of , through ansible inventory, adding new list to the `mailman_lists` ansible list variable with some parameters like :

  * name: the mailman list name
  * description: list description appearing on mailman ui
  * password: unique password for that list, as we can have specific operators for that list
  * admin: the email address of the list owner

Once pushed to git and applied by ansible, the new list will appear

### Modifying lists settings

If the setting you want to modify is one of the previously mentioned variables, updating in git/ansible would then trigger a reconfig with these settings.

But some settings are just configured through mailman itself, so to modify these ones, you need either the `password` list (specific to that list), or the whole `mailman_admin_pass` (also called site password, that can be used to admin all lists)

To do this, just browse the [mailman admin UI](https://lists.centos.org/mailman/admin), select your list and auth with the needed password.

You can then proceed with changes like, adding/removing subscribers, work with moderation queue, etc, etc ..