[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: coping with a high-volume mailing list (like this one)?



Here's my setup:

Software
--------
nmh - A set of electronic mail handling programs.
mutt - Text-based mailreader supporting MIME, GPG, PGP and threading.
fetchmail-ssl - POP2/3, APOP, IMAP mail gatherer/forwarder (with ssl support)
sendmail - A powerful mail transport agent.
procmail - Versatile e-mail processor.

I like nmh for it's strength on the command line, it's WONDERFUL
regexp matching,  and for it's organization of email messages as
separate files organized under directories.  Mutt is a very nice
ncurses CUI to interface with the mailboxes when I'm too lazy to do it
from the shell and when I want to see articles in a threaded
presentation.  Fetchmail-ssl is essential for grabbing my email from
the number of different SSL enabled IMAP/POP servers.  Procmail, of
course, is great for writing filtering recipes for my email so that
everything gets put into place.

To make this all work together, I've written a small shell script to
create new list directories at the beginning of the month (inspired by
the procmailex(5) man page).

#-------------------- SCRIPT BEGINS ----------------------------------
#!/bin/bash
# Folder manager for the ~/Mail folder
# by Chad Walstrom <chewie@wookimus.net>

# Move to the Mail directory
builtin cd ~/Mail

# make sure we have a list
[ 0 -eq ${#1} ] && exit 0

# Assign the lists
LIST=${1}
YEARMONTH=`date +%Y%m`

if [ ! -d ${LIST}.${YEARMONTH} ] ; then
    mkdir ${LIST}.${YEARMONTH}
fi

if [ -a ${LIST} ] && [ -L ${LIST} ] ; then
    rm ${LIST}
elif [ -a ${LIST} ] ; then
    mv ${LIST} ${LIST}.bak
fi

ln -s ${LIST}.${YEARMONTH} ${LIST}
touch ${LIST}/.mh_sequences
#-------------------- SCRIPT ENDS ------------------------------------

The recipe I use to launch this is:

#-------------------- RECIPE BEGINS ----------------------------------
MONTH=`date +%Y%m`

:0:
* ^TOlist-foo@listserver.foo
{
    :0 Wic
    * test -d list-foo.${MONTH}
    | listln list-foo

    :0:
    list-foo/.
}
#-------------------- RECIPE ENDS ------------------------------------

Additional Tools
----------------
abook - A text-based ncurses address book application.
lbdb - The little brother's database for the mutt mail reader
muttzilla - Launch email or news clients from Netscape.
procmail-lib - A library of useful procmail recipes.
junkfilter - A junk-email filtering program for procmail
spamfilter - Filter spam from incoming mail
dotfile-procmail - Dotfile Generator, module for procmail

Documentation
-------------
mh-book - MH & nmh: Email for Users & Programmers online book
sendmail-doc - A powerful mail transport agent.

-- 
Chad "^chewie, gunnarr" Walstrom <chewie@wookimus.net>
             http://www.wookimus.net/

Attachment: pgpZxIwOIeTMt.pgp
Description: PGP signature


Reply to: