>Thanks, Dan.
>
>I was under the impression from reading the archives that there was
>no way to demime messages. How would I do that?
>
>There's nothing like a few days with majordomo to make one feel like
>a moron; I still haven't gotten my digest working.
>
Hi Doug,
There is no way to demime a message from withing majordomo, but just
like bulk_mailer for solving slow sendmail problems, there is a tool
for solving this problem too.
http://scifi.squawk.com/demime.html
As for your digest, there are three pieces to the puzzle.
1) majordomo.cf
2) sendmail aliases
3) file/directory structure
Digest has a dependency on archiving the digest once created, before
it can be distributed to the list. Depending on how you have your
majordomo.cf configured for archives, is what your file structure
and your aliases would look like. Assuming your majordomo.cf has
something similar to these settings;
# $datadir -- Where should I put work, archive, config, and
# subscriber files and directories?
#
$datadir = "/var/lib/majordomo";
# $listdir -- Where are the mailing lists?
#
$listdir = "$datadir/lists";
# $digest_work_dir -- the parent directory for digest's queue area
# Each list must have a subdirectory under this directory in order for
# digest to work. E.G. The bblisa list would use:
# /var/lib/majordomo/digest/bblisa
# as its directory.
#
$digest_work_dir = "$datadir/digest";
# Majordomo will look for "get" and "index" files related to $list in
# directory "$filedir/$list$filedir_suffix", so set $filedir and
# $filedir_suffix appropriately. For instance, to look in
# /var/lib/majordomo/archives/$list, use:
# $filedir = "/var/lib/majordomo/archives";
# $filedir_suffix = ""; # empty string
# or to look in $listdir/$list.archive, use:
# $filedir = "$listdir";
# $filedir_suffix = ".archive";
$filedir = "$datadir/archives";
$filedir_suffix = "";
You would need to have the following directory heirarchy
all owner:group majordomo:majordomo;
/var/lib/majordomo
/var/lib/majordomo/lists
/var/lib/majordomo/digest
/var/lib/majordomo/digest/test-digest
/var/lib/majordomo/archives
/var/lib/majordomo/archives/test
/var/lib/majordomo/archives/test-digest
You would also need aliases for archiving and digesting
the messages that pass successfully through resend (which
in your case would have also passed through demime before
getting to resend.
#the list address pipes messages through demime filters to get rid of
#attachments and convert special formatting back into plain text before
#using resend to force use of test.config rules
test: "|/usr/lib/majordomo/demime - |/usr/lib/majordomo/wrapper resend -l test test-outgoing,nobody"
test-owner: owner-test
#assumes "sender = owner-test" in test.config file
owner-test: dliston,test-autobounce
#the next line distributes the message to the list, spools it for digesting, and builds the archive
test-outgoing: :include:/var/lib/majordomo/lists/test,test-digestify,test-archiver
test-approval: owner-test
test-request: "|/usr/lib/majordomo/wrapper majordomo -l test"
#the next two lines use a custom script for automating add/remove requests (not required)
test-subscribe: "|/usr/lib/majordomo/wrapper subscribe test"
test-unsubscribe: "|/usr/lib/majordomo/wrapper subscribe -u test"
#autobounce is a custom script that makes bad address processing a little easier (not required)
test-autobounce: "|/usr/lib/majordomo/wrapper autobounce -l test"
#the next line is required from -outgoing alias to create the digest
test-digestify: "|/usr/lib/majordomo/wrapper digest -r -C -l test-digest test-digest-outoing,nobody"
#the next line is required from -outgoing alias to create the archive
test-archiver: "|/usr/lib/majrodom/wrapper archive2.pl -f /var/lib/majordomo/archives/test/test -a -M"
#the next line redirects messages sent directly to the digest address back to the the main address
#where it can be properly processed for digesting
test-digest: test
test-digest-outgoing: :include:/var/lib/majordomo/lists/test-digest,nobody
test-digest-approval: test-approval
test-digest-request: "|/usr/lib/majordomo/wrapper request-answer test-digest"
test-digest-subscribe: "|/usr/lib/majordomo/wrapper subscribe test-digest"
test-digest-unsubscribe: "|/usr/lib/majordomo/wrapper subscribe -u test-digest"
test-digest-autobounce: "|/usr/lib/majordomo/wrapper autobounce -l test-digest"
#note: I use ",nobody" on outgoing lines to prevent disclosure of alias by sendmail
#note: autobounce has dependency on "bounces" mailing list unless -n argument is used
Just globally replace the word "test" with your listname, and you should have
a working digest.
Dan Liston
PS. Further information on autobounce can be found at;
http://www.hpc.uh.edu/pub/majordomo/
or
ftp://ftp.hpc.uh.edu/pub/majordomo/autobounce
The subscribe script should be attached to emails in the archives for this
list, but if you have trouble finding it, I can attach it again.
References:
|
|