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

Re: removal of the vacation package



On 01/13/2014 05:25 AM, Bjørn Mork wrote:
> md@Linux.IT (Marco d'Itri) writes:
>> On Jan 12, Stefano Zacchiroli <zack@debian.org> wrote:
>>
>>> It still seems to have a fair number of loyal users though. I see your
>> popcon says 1867 have it installed, but only 222 "voted".
>>
>>> If we do have such a
>>> replacement (I just don't know) please mention it in the removal bug
>>> report.
>> I agree with waldi that the most simple replacement is a Sieve-enabled 
>> LDA.  
> 
> Is there such a beast with feature parity?  vacation has a few nice
> defaults, like ignoring list mails and only sending one message per week
> to each receiver.  Having every end user implement similar behaviour in
> sieve isn't likely to happen.

With mailbot from courier-maildrop, it's easy to do for a .mailfilter
file (though it'd be once per recipient, which is IMO enough, I don't
see the point of the "one per week" feature):

RECIPIENT=$LOGNAME
RESPOND="~/.vacation.msg"
RESPONDDB="~/.vacation.db"
if ( ! /^Precedence: (bulk|list|junk)/ && \
     ! /^List-Id:/ && \
     ! /^List-Unsubscribe:/ && \
     ! /^Return-Path:.*<#@\[\]>/ && \
     ! /^Return-Path:.*<>/ && \
     ! /^From:.*MAILER-DAEMON/ && \
     ! /^X-ClamAV-Notice-Flag: *YES/ && \
     ! /^Content-Type:.*message\/delivery-status/ && \
     ! /^Subject:.*Delivery Status Notification/ && \
     ! /^Subject:.*Undelivered Mail Returned to Sender/ && \
     ! /^Subject:.*Delivery failure/ && \
     ! /^Subject:.*Message delay/ && \
     ! /^Subject:.*Mail Delivery Subsystem/ && \
     ! /^Subject:.*Mail System Error.*Returned Mail/ && \
     ! /^X-AutoReply.*/ && \
     ! /^X-Mail-Autoreply.*/ && \
     ! (/^Auto-Submitted:/ && ! /^Auto-Submitted:\s*no/) && \
     ! /^X-Spam-Flag: YES/ )
{
	cc "| mailbot -r '$RECIPIENT' -A 'Auto-Submitted: auto-replied' -t
$RESPOND -c 'UTF-8' -d $RESPONDDB -D 1 -A 'From: $RECIPIENT' -s 'Auto
Response: from $RECIPIENT' /usr/sbin/sendmail -f '<>' -t"
}

This is for a .maildrop, though the same can be achieve with Sieve indeed...

if header :matches "Subject" "*" {
        set "oldsub" ": \${1}";
}
if allof (
not header :contains "Precedence" ["bulk","list","junk"],
not header :contains "List-Id" ["YES"],
not header :contains "List-Unsubscribe" ["YES"],
not header :contains "Return-path" "*<#@\[\]>",
not header :contains "Return-path" "*<>",
not header :contains "From" ["*MAILER-DAEMON"],
not header :contains "Content-Type" "delivery-status",
not header :contains "Subject" "*Delivery Status Notification",
not header :contains "Subject" "*Undelivered Mail Returned to Sender",
not header :contains "Subject" "*Delivery failure",
not header :contains "Subject" "*Mail Delivery Subsystem",
not header :contains "Subject" "*Mail System Error.*Returned Mail",
not header :contains "X-AutoReply" "*",
not header :contains "X-Mail-Autoreply" "*",
not allof (
        exists "Auto-Submitted",
        not header :matches "Auto-Submitted" "no"
        ),
not header :contains "X-ClamAV-Notice-Flag" ["YES"],
not header :contains "X-Spam-Flag" ["YES"] ) {
vacation :days 2 :addresses ["$recipient"] :subject "Auto Response from
$recipient\${oldsub}"
text:
$vacation_text
.
;}


> The world has become a lot more stupid since vacation was written....

Which is why it's very nice to talk about this on a public list, and why
I'm posting this answer! :)

Thomas


Reply to: