Typical mailing list configuration

  • For most lists:
    advertise = 1
    bounce_processing = 1
    archive = 1
    archive_private = 0
    archive_volume_frequency = 1
    subscribe_policy = 0
    obscure_addresses = 0
    dmarc_moderation_action=1
    dmarc_quarantine_moderation_action=1
    dmarc_none_moderation_action=1
    max_num_recipients = 0
  • For announce lists:
    generic_nonmember_action=1
  • For patches list, maybe:
    dmarc_moderation_action=0
    max_message_size=0

Status

  • mailing list data is in /sourceware1/var/lib/mailman.

  • mbox files that archive incoming mail are the master content: /var/lib/mailman/archives/private/LIST.mbox. .../LIST.mbox/LIST.mbox is the file actively written to as mail is received at the mailing list reflector. Sibling .mbox files are rotated from earlier times / systems.

  • These mbox files are used by the arch binary to generate all html and txt files that the web server exports. Use the /sourceware/infra/bin/mmrefresh LIST widget to regenerate it all.

  • You can inspect the sourceware archives by going to http://sourceware.org/mailman/listinfo http://gcc.gnu.org/mailman/listinfo https://cygwin.com/mailman/listinfo

  • Tip: /usr/lib/mailman/bin/config_list -o - LISTNAME to look at mailman config flags for a list.

  • Tip: echo '$attribute=$value' | /usr/lib/mailman/bin/config_list -i /dev/stdin LISTNAME to set an attribute.

  • Todo: Might need to modify/recreate some mlcheckd functionality. /usr/local/mailman/mailman is a front-end script which could be adapted to do that.

  • dkim is is currently underway in opendkim.

  • dmarc is active (we publish dmarc records in our DNS, and check/report on incoming mail with opendmarc)

spam removal ... or not

  • run /sourceware/infra/bin/medit LIST, which does the following:
    1. run mutt -f /var/lib/mailman/archives/private/LIST.mbox/LIST.mbox to inspect mailing list
    2. run /sourceware/infra/bin/mrefresh LIST to regenerate web archives (slow)
  • in mutt, press S to report as spam, then d to delete, eventually q to quit

Unfortunately, the above is a bad idea, because old archive URLs are invalidated, which breaks bugzilla & mailing list history.

2020-03 one-time migration tools

Scripts:

  • /home/cgf/bin/mmlist listname [listname ...]
    Copy list from /sourceware1old/qmail/lists/* to mailman

    --fresh wipe out any existing list and recreates it
    --update redo configuration without trying to create a list
    --keep don't delete archives when --fresh

  • /home/cgf/bin/mmarch listname [listname ...]
    Copy archive from /sourceware1old/www//lists to /home/cgf/migration/mlists.d/list/dir

    Creates individual mbox files from web archives using either html or mbox format (where available).

    --wipe wipe out any existing data and recreate from scratch. (DON'T USE)

  • /home/cgf/bin/bigarch listname [listname ...]
    Concatenate individual mbox files from /home/cgf/migration/mlists.d/list//.mbox to /var/lib/mailman/archives/private/list:ezmlm-YEAR.mbox