#!/bin/sh set -e cfgdir="/etc/local-ORG/mailman" sharedir="/etc/local-COMMON/mailman" skeldir="$sharedir/skel" MAILDOMAIN="${maildomain:-`head -n 1 /etc/mailname`}" LISTDOMAIN="${listdomain:-lists.$MAILDOMAIN}" OWNER="${owner:-listmaster@$MAILDOMAIN}" LANG="${lang:-en}" refreshlists() { existinglists="`/usr/sbin/list_lists -b`" } mklist() { list="$1"; shift type="$1"; shift desc="$1"; shift lang="${1:-$LANG}" owner="${2:-$OWNER}" if ! echo "$existinglists" | grep -q "^$list\$"; then newlist -l "$lang" -q "$list" "$owner" "`gpw | head -n 1`" fi LISTNAME="$list" LISTDESC="$desc" LISTOWNER="$owner" "$sharedir/mklist.pl" "$skeldir/$type.$lang.py" > "$list.py" config_list -i "$cfgdir/$list.py" "$list" config_list -o "$cfgdir/$list.py" "$list" } populatelist() { list="$1"; shift [ ! -f "$cfgdir/$list.members" ] || add_members -r "$cfgdir/$list.members" -w n -a n "$list" localuserinfo --custom='%fullname% <%mailaddress%>' "$@" | add_members -r - -w n -a n "$list" list_members --fullnames --preserve -o "$cfgdir/$list.members" "$list" }