[Mailman-Users] Confusion with Mailman3 Config

Mark Sapiro mark at msapiro.net
Fri Sep 8 10:57:30 EDT 2017

On 09/07/2017 01:27 PM, Sebastian Kotthoff wrote:
> after installing mailman3 successfully (took me 5 evenings), I'm now confused about the configuration.

A more appropriate list for Mailman 3 is mailman-users at mailman3.org

> But now, I like to change the default language of a list from English to German,
> so that the German templates are selected.
> I found some hint in URL: https://pythonhosted.org/mailman/src/mailman/commands/docs/create.html,
> where they use a command line (mailman client or mailman shell?) to change the language during creation.

A more up to date (and more nicely rendered) version of this is at

> This does not work for me, but the mayer point is, that I got lost between the different kinds of interfaces.

There are currently no i18n translations for Mailman 3. Thus setting the
list's preferred language to German will have no real effect.

> It seems, that there are:
> - Rest server API          - start via ".local/bin/ipython3" in my environment?
> - Rest client API          - start via "ipython" ?
> - mailmanclient / mmclient - start via "python manage.py mmclient" in mailman-suite_project
> - mailman shell            - start via ".local/bin/mailman shell"
> What would be the best way of configure a mailing list?

For configuration settings not exposed in Postorius, 'mailman shell' is
preferred. If a setting is not exposed in Postorius, there is no
guarantee it is exposed in the REST API either and even if it is, it may
not be exposed in mailmanclient.

> The howto from the URL above is working with the mailman shell for me, but unfortunately, it is
> about creating mailling lists, not creating. Are there any howto about modify a maillist?

Here's a simple example:

$ mailman shell -l test at mailman3.org
Welcome to the GNU Mailman shell
The variable 'm' is the test at mailman3.org mailing list
>>> m.preferred_language
<Language [en] English (USA)>
>>> m.preferred_language='de'
>>> m.preferred_language
<Language [de] German>
>>> commit()

The 'commit()' isn't necessary if you just exit (control-D) as that does
an implicit commit, but if you do a series of changes, without commit(),
you can reverse them with abort().

Also note that the above 'mailman shell -l test at mailman3.org' is the
latests syntax. Older versions may not use '-l' before the list name.

Mark Sapiro <mark at msapiro.net>        The highway is for gamblers,
San Francisco Bay Area, California    better use your sense - B. Dylan

More information about the Mailman-Users mailing list