Lists.wikimedia.org

From Wikitech
Revision as of 21:51, 29 December 2006 by Mark (Talk | contribs)

Jump to: navigation, search

The new Mailman setup lives on lily, and uses the standard Ubuntu package mailman. The mailing list state is under /var/lib/mailman/, the global configuration is in /etc/mailman/.

The mail server used is Exim, the web server used is lighttpd.

Contents

Mailman setup

The following settings were modified in /etc/mailman/mm_cfg.py:

# If you change these, you have to configure your http server
# accordingly (Alias and ScriptAlias directives in most httpds)
DEFAULT_URL_PATTERN = 'http://%s/mailman/'
PRIVATE_ARCHIVE_URL = '/mailman/private'
# Default domain for email addresses of newly created MLs
DEFAULT_EMAIL_HOST = 'lists.wikimedia.org'
# Default host for web interface of newly created MLs
DEFAULT_URL_HOST   = 'lists.wikimedia.org'

Exim recognizes which lists exist under @lists.wikimedia.org, so aliases are only needed in other domains:

# Uncomment this if you configured your MTA such that it
# automatically recognizes newly created lists.
# (see /usr/share/doc/mailman/README.{EXIM,...})
# MTA=None   # Misnomer, suppresses alias output on newlist
MTA=None

Mail server setup

Web server setup

To get Mailman running with lighttpd, a couple of small changes had to be made to the default configuration file. mod_cgi and mod_redirect need to be loaded:

server.modules              = (
           "mod_access",
           "mod_alias",
           "mod_accesslog",
           "mod_redirect",
           "mod_cgi",
)

To make path /mailman/ invoke the correct CGI scripts, use:

# Mailman
alias.url = (
       "/mailman/"     => "/usr/lib/cgi-bin/mailman/",
       "/pipermail/"   => "/var/lib/mailman/archives/public/",
       "/images/"      => "/usr/share/images/",
)

url.redirect = ( "^/mailman/?$" => "/mailman/listinfo" )

$HTTP["url"] =~ "^/mailman/" {
       cgi.assign = ( "" => "" )
}

See also http://www.gnu.org/software/mailman/mailman-install/node10.html

TODO

  • Mail server configuration fine tuning
  • Mail server configuration documentation
  • Mailman configuration fine tuning
  • Spam filtering (current config?)
  • htdig
  • Backup MX
  • Automatic mailing list index script (also, 404 handlers, robots.txt...)
  • Migrate templates
  • Migrating existing mailing lists, with announcements
  • Redirection of old URL to new
  • DNS Resolver
  • Monitoring

Old setup

Mailing lists live in /usr/local/mailman/ on goeje.

The current setup:

  • Does not use VERP
  • Does not use a separate lists domain

The templates for list messages etc. are in /usr/local/mailman/template/<langcode>; these can be customised per-list by copying them to /usr/local/mailman/lists/<listname>/<langcode>/ and editing them. Make sure they're still writable by Apache otherwise the mailman web interface doesn't work! (this means they have to be owned by group mailman and be g+w)

To add a new list:

 /usr/local/mailman/bin/newlist

Ensure /usr/local/mailman/aliases.mailman is up-to-date after doing this, and run newaliases and postfix reload.

The old symlink from /home/mailman to /usr/local/mailman has been removed as of February 15, 2006. Make sure any old directions and config files are updated to reflect this.

List archives are being removed from robots.txt as of November 3, 2006 to reduce annoying complaints about peoples' names appearing on google.

Personal tools
Namespaces

Variants
Actions
Navigation
Ops documentation
Wiki
Toolbox