summaryrefslogtreecommitdiff
path: root/.config
diff options
context:
space:
mode:
authorLuke Shumaker <lukeshu@sbcglobal.net>2014-10-10 17:11:18 -0400
committerLuke Shumaker <lukeshu@sbcglobal.net>2014-10-10 17:15:47 -0400
commit5984f9884153b4f035bf3be3cd69ef2970244209 (patch)
tree00ba5b0a4258fcead1c18e80832143f054fa510c /.config
parentf93b92a36a16090b70696ae39251e32259f8e93f (diff)
update mail filters
Diffstat (limited to '.config')
-rw-r--r--.config/maildirproc/att.rc102
-rw-r--r--.config/maildirproc/purdue.rc36
-rw-r--r--.config/offlineimaprc4
3 files changed, 82 insertions, 60 deletions
diff --git a/.config/maildirproc/att.rc b/.config/maildirproc/att.rc
index 0252c74..e7f581b 100644
--- a/.config/maildirproc/att.rc
+++ b/.config/maildirproc/att.rc
@@ -37,20 +37,17 @@ def bogofilter_auto(mail):
"Error running bogofilter: Return code = {0!r}".format(
p.returncode))
return p.returncode
-
def bogofilter_ham(mail):
subprocess.call(["bogofilter", "-S", "-n", "-I", mail.path])
-
def bogofilter_spam(mail):
subprocess.call(["bogofilter", "-N", "-s", "-I", mail.path])
-def handle_incoming_spam_training(mail):
- bogofilter_spam(mail)
- mail.move("FOLDERS.Spam")
-
def handle_incoming_ham_training(mail):
bogofilter_ham(mail)
handle_incoming_ham(mail)
+def handle_incoming_spam_training(mail):
+ bogofilter_spam(mail)
+ mail.move("FOLDERS.Spam")
def handle_incoming_ham(mail):
my_filters(mail)
@@ -71,7 +68,7 @@ def handle_incoming_unknown(mail):
or mail["From"].contains("@parabola.nu")
or mail["From"].contains("parabolagnulinux.org")
or mail["From"].contains("@facebookmail.com>")
- or mail["List-Id"].matches(".*\.(gnu|archlinux|parabolagnulinuxlibre)\.org")
+ or mail["List-Id"].matches(".*\.(gnu|gnome|archlinux|parabolagnulinuxlibre)\.org")
):
handle_incoming_ham_training(mail)
return
@@ -84,10 +81,10 @@ def handle_incoming_unknown(mail):
handle_incoming_ham(mail)
return
elif spam == 2:
- mail.move("Inbox")
+ mail.move("FOLDERS.MysteryMeat")
return
else:
- mail.move("FOLDERS.Error")
+ mail.move("FOLDERS.BogoFail")
return
def my_filters(mail):
@@ -98,7 +95,7 @@ def my_filters(mail):
or mail["List-Id"].matches(list+"\.gnu\.org")
or mail["Subject"].contains('['+list+']')
):
- mail.move("FOLDERS.software."+list)
+ mail.move("FOLDERS.Ham.software."+list)
return
# Sort mail from other software mailing lists
@@ -107,67 +104,58 @@ def my_filters(mail):
or mail["List-Id"].matches("social-discuss\.gnu\.org")
or mail["Subject"].contains("social-discuss")
):
- mail.move("FOLDERS.software.social")
+ mail.move("FOLDERS.Ham.software.social")
return
if mail["List-Id"].matches("networkmanager-list\.gnome\.org"):
- mail.move("FOLDERS.software.networkmanager")
+ mail.move("FOLDERS.Ham.software.networkmanager")
return
if mail["List-Id"].matches("maintenance.lists.parabolagnulinux.org"):
- if mail["From"].contains("monit@"):
- if mail["Message-Id"].contains("@repo.parabolagnulinux.org"):
- if mail["Subject"].matches("^\[Maintenance\] monit alert -- (Execution|Connection) (succeeded|failed) sshd$"):
- mail.move("FOLDERS.software.parabola-maintenance.monit-repo.sshd")
- return
- mail.move("FOLDERS.software.parabola-maintenance.monit-repo")
- return
- if mail["Message-Id"].contains("@rshg054.dnsready.net"):
- mail.move("FOLDERS.software.parabola-maintenance.monit-rshg054")
- return
if mail["Subject"].matches("Cron <.*@repo>"):
- mail.move("FOLDERS.software.parabola-maintenance.cron-repo")
+ mail.move("FOLDERS.Ham.software.parabola-maintenance.cron-repo")
return
- if mail["Subject"].matches("Cron <.*@rshg054>"):
- mail.move("FOLDERS.software.parabola-maintenance.cron-rshg054")
+ if mail["Subject"].matches("Cron <.*@parabolagnulinux>"):
+ mail.move("FOLDERS.Ham.software.parabola-maintenance.cron-web")
return
- mail.move("FOLDERS.software.parabola-maintenance")
+ mail.move("FOLDERS.Ham.software.parabola-maintenance")
return
- #if is_to_or_from(mail, "parabola.nu"):
- # mail.move("FOLDERS.software.parabola-labs")
- # return
+ if is_to_or_from(mail, "labs@parabola.nu"):
+ mail.move("FOLDERS.Ham.software.parabola-labs")
+ return
if (
False
or mail["List-Id"].matches("parabolagnulinux.org")
or is_to_or_from(mail, "parabolagnulinux.org")
or is_to_or_from(mail, "kiwwwi.com.ar")
+ or is_to_or_from(mail, "parabola.nu")
):
if mail["Subject"].contains("[Django]"):
- mail.move("FOLDERS.software.parabola-maintenance.django")
+ mail.move("FOLDERS.Ham.software.parabola-maintenance.django")
return
- mail.move("FOLDERS.software.parabola-dev")
+ mail.move("FOLDERS.Ham.software.parabola-dev")
return
if (mail["List-Id"].matches("pacman-dev.archlinux.org")):
- mail.move("FOLDERS.software.pacman-dev")
+ mail.move("FOLDERS.Ham.software.pacman-dev")
return
if (mail["List-Id"].matches("systemd-devel.lists.freedesktop.org") or is_to_or_from(mail, "systemd-devel@lists.freedesktop.org")):
- mail.move("FOLDERS.software.systemd-devel")
+ mail.move("FOLDERS.Ham.software.systemd-devel")
return
for subject_re in [
"\[Stow-[^\]]*\].*",
]:
if mail["Subject"].matches(subject_re):
- mail.move("FOLDERS.software")
+ mail.move("FOLDERS.Ham.software")
return
# Sort mail from some social websites
if mail["From"].matches("facebook(|mail)\.com"):
- mail.move("FOLDERS.Social.Facebook")
+ mail.move("FOLDERS.Ham.Social.Facebook")
return
if (
@@ -175,15 +163,15 @@ def my_filters(mail):
or mail["From"].matches("identi\.ca")
or mail["From"].matches("statusnet")
):
- mail.move("FOLDERS.Social.Identica")
+ mail.move("FOLDERS.Ham.Social.Identica")
return
if mail["From"].matches("twitter\.com"):
- mail.move("FOLDERS.Social.Twitter")
+ mail.move("FOLDERS.Ham.Social.Twitter")
return
if mail["From"].matches("@xkcd\.com"):
- mail.move("FOLDERS.Social.xkcd")
+ mail.move("FOLDERS.Ham.Social.xkcd")
return
# Sort mail related to Troop 276
@@ -207,12 +195,12 @@ def my_filters(mail):
or is_to_or_from(mail,"mytroop.us")
or is_to_or_from(mail,"crossroadsbsa.org")
):
- mail.move("FOLDERS.BoyScouts")
+ mail.move("FOLDERS.Ham.BoyScouts")
return
# Sort mail from misc people
if mail["From"].matches("margieshu@sbcglobal\.net"):
- mail.move("FOLDERS.misc.Mom")
+ mail.move("FOLDERS.Ham.misc.Mom")
return
for address in [
@@ -222,7 +210,7 @@ def my_filters(mail):
"jadparso@umail.iu.edu",
]:
if is_to_or_from(mail,address):
- mail.move("FOLDERS.misc.Jade")
+ mail.move("FOLDERS.Ham.misc.Jade")
return
for address in [
@@ -230,7 +218,7 @@ def my_filters(mail):
"nintendo-news.com",
]:
if mail["From"].contains(address):
- mail.move("FOLDERS.misc.Nintendo")
+ mail.move("FOLDERS.Ham.misc.Nintendo")
return
for address in [
@@ -239,7 +227,7 @@ def my_filters(mail):
"CompTIA",
]:
if mail["From"].contains(address):
- mail.move("FOLDERS.misc.CompTIA")
+ mail.move("FOLDERS.Ham.misc.CompTIA")
return
# Sort mail from FRC people
@@ -264,7 +252,7 @@ def my_filters(mail):
"william.walk@gmail.com",
]:
if is_to_or_from(mail,address):
- mail.move("FOLDERS.School.Robotics")
+ mail.move("FOLDERS.Ham.School.Robotics")
return
for subject_re in [
"robotics",
@@ -272,7 +260,7 @@ def my_filters(mail):
"kil-?a-?bytes",
]:
if mail["Subject"].matches(subject_re):
- mail.move("FOLDERS.School.Robotics")
+ mail.move("FOLDERS.Ham.School.Robotics")
return
# Sort mail from software people
@@ -294,7 +282,7 @@ def my_filters(mail):
"trustees@core3.amsl.com",
]:
if is_to_or_from(mail,address):
- mail.move("FOLDERS.software")
+ mail.move("FOLDERS.Ham.software")
return
@@ -304,16 +292,16 @@ def my_filters(mail):
or is_to_or_from(mail, "@lnnorthstar.org")
or is_to_or_from(mail, "lnnorthstar.org@tigertech.net")
):
- mail.move("FOLDERS.School.Newspaper")
+ mail.move("FOLDERS.Ham.School.Newspaper")
return
# Sort mail from various employers/people who pay me
if is_to_or_from(mail, "@precisepath.com"):
- mail.move("FOLDERS.Work.PrecisePath")
+ mail.move("FOLDERS.Ham.Work.PrecisePath")
return
if is_to_or_from(mail,"susyphil@aol.com"):
- mail.move("FOLDERS.Work.PMCH")
+ mail.move("FOLDERS.Ham.Work.PMCH")
for address in [
"d.farrar@comcast.net",
@@ -321,7 +309,7 @@ def my_filters(mail):
"@vmware.com",
]:
if is_to_or_from(mail,address):
- mail.move("FOLDERS.Work.FAST")
+ mail.move("FOLDERS.Ham.Work.FAST")
return
# Sort misc newsletters
@@ -335,7 +323,7 @@ def my_filters(mail):
or mail["From"].contains("info@demandprogress.org")
or (mail["From"].contains("@sparkfun.com") and mail["Message-Id"].contains("rsgsv.net"))
):
- mail.move("FOLDERS.misc.Newsletters")
+ mail.move("FOLDERS.Ham.misc.Newsletters")
return
if (
@@ -351,7 +339,7 @@ def my_filters(mail):
or mail["Subject"].contains("NHS")
or mail["Subject"].contains("National Honor Society")
):
- mail.move("FOLDERS.School")
+ mail.move("FOLDERS.Ham.School")
return
# from college stuff
@@ -360,7 +348,7 @@ def my_filters(mail):
or mail["Subject"].contains("NYLF") # National Youth Leadership Conference
or mail["Subject"].contains("NSHSS")
):
- mail.move("FOLDERS.College.Societies")
+ mail.move("FOLDERS.Ham.College.Societies")
return
if (
False
@@ -373,11 +361,11 @@ def my_filters(mail):
or mail["From"].contains("@dreamitdoitindiana.com")
or mail["From"].contains("@indianatechinfo.org")
):
- mail.move("FOLDERS.College")
+ mail.move("FOLDERS.Ham.College")
return
if mail["From"].contains("@projectwonderful.com"):
- mail.move("FOLDERS.misc.ProjectWonderful")
+ mail.move("FOLDERS.Ham.misc.ProjectWonderful")
return
if (
@@ -387,14 +375,14 @@ def my_filters(mail):
or mail["From"].matches("@[^,>]*\.lukeshu\.ath\.cx")
or mail["To"].matches("luke@")
):
- mail.move("FOLDERS.LocalSystems")
+ mail.move("FOLDERS.Ham.LocalSystems")
return
if (
False
or mail["Subject"].contains("password")
or mail["Subject"].contains("account")
):
- mail.move("FOLDERS.misc.accounts")
+ mail.move("FOLDERS.Ham.misc.accounts")
return
mail.move("FOLDERS.Ham")
diff --git a/.config/maildirproc/purdue.rc b/.config/maildirproc/purdue.rc
index 6d4b913..7b75d7c 100644
--- a/.config/maildirproc/purdue.rc
+++ b/.config/maildirproc/purdue.rc
@@ -70,10 +70,18 @@ def my_filters(mail):
or is_to_or_from(mail,"@propertysolutions.com")
or is_to_or_from(mail,"collegestationapartments@gmail.com")
or is_to_or_from_re(mail,"collegestationca\..*@gmail.com")
- or is_to_or_from(mail, "@duke-energy.com")
):
mail.move("INBOX.housing.CollegeStation")
return
+ if (
+ False
+ or is_to_or_from(mail,"@hunterlp.com")
+ or is_to_or_from(mail, "@duke-energy.com")
+ or is_to_or_from(mail, "@alerts.comcast.net")
+ or is_to_or_from(mail, "rentpayment.com")
+ ):
+ mail.move("INBOX.housing.BeauJardin")
+ return
if mail["From"].matches("facebook(|mail)\.com"):
mail.move("INBOX.crap.Facebook")
@@ -183,6 +191,32 @@ def my_filters(mail):
mail.move("INBOX.classes.2014-1.STAT350.Piazza")
return
+ # Fall 2014 ############################################################
+
+ # CS334 (Graphics)
+ if (is_to_or_from(mail, "lin553@purdue.edu") or mail["Subject"].contains("Fall-2014-CS-33400")):
+ mail.move("INBOX.classes.2014-2.CS334")
+ return
+ # CS354 (OS)
+ # CS381 (Algo)
+ if piazza_topic(mail, "CS 354"):
+ mail.move("INBOX.classes.2014-2.CS354.Piazza")
+ return
+ if piazza_topic(mail, "CS 381"):
+ mail.move("INBOX.classes.2014-2.CS381.Piazza")
+ return
+ # CS456 (Programming languages)
+ if piazza_topic(mail, "CS 456"):
+ mail.move("INBOX.classes.2014-2.CS456.Piazza")
+ return
+ # MA416
+ if mail["Subject"].contains("Fall-2014-MA-41600"):
+ mail.move("INBOX.classes.2014-2.MA416")
+ return
+ # PHYS221
+ if (is_to_or_from(mail, "cui@purdue.edu") or is_to_or_from(mail, "china@purdue.edu")):
+ mail.move("INBOX.classes.2014-2.PHYS221")
+ return
handle_mapping = {
"INBOX": my_filters,
}
diff --git a/.config/offlineimaprc b/.config/offlineimaprc
index bdc2c66..36b382c 100644
--- a/.config/offlineimaprc
+++ b/.config/offlineimaprc
@@ -12,7 +12,7 @@ remoterepository = Remote-SBCGlobal
type = Maildir
localfolders = ~/Maildir
sep = .
-folderfilter = lambda folder: folder in [ 'Inbox' ]
+folderfilter = lambda folder: folder in [ 'Inbox', 'Bulk Mail' ]
[Repository Remote-SBCGlobal]
type = IMAP
@@ -20,7 +20,7 @@ ssl = yes
cert_fingerprint = 9751f610c2631b3d4e63afcd096e5eb94c1f6fc8
remotehost = imap.mail.yahoo.com
remoteuser = lukeshu@sbcglobal.net
-folderfilter = lambda folder: folder in [ 'Inbox' ]
+folderfilter = lambda folder: folder in [ 'Inbox', 'Bulk Mail' ]
## Purdue ############################################################