# meta-actions:
#  @ARCHIVE $path   = auto-archive to $path
#  @VACATION $level = reply with vacation message if vacation is $level or above
#  @NOFINISH        = do not add "finish" action at the end of the rule [i.e. continue processing]
#  @DISABLED        = disable rule [must be first meta-action]

# Begin global settings
[!GLOBAL!]

# Root of mail path (i.e. save $mail-root/$dir)
mail-root = "IMAP"

# Where errors should go (i.e. if error_message then; save $mail-root/$errors-to; finish; endif)
errors-to = "errors"

# Current vacation level
vacation-level = 0

# Vacation aliases
vacation-alias = my.user@my.university.ac.uk myabbr@my.university.ac.uk

# Vacation message path
vacation-msg = $home/vacation/message
# Vacation log file
vacation-log = $home/vacation/log
# Vacation memory file
vacation-once = $home/vacation/once
# Vacation repeat rate
vacation-repeat = 2d

# Path to use for automatic archiving ($1 = YYYY-MM)
archive-path = "IMAP/archive/$1/"

# operators:
#   autoforward   .forward
#  ------------------------
#   ==            is
#   !=            is not
#   =^            starts
#   !^            does not start
#   =$            ends
#   !$            does not end
#   =~            matches
#   !~            does not match
#   =|            contains
#   !|            does not contain

# folder name
[spam]
# rule composition style (default: or)
or
# begin bracketed group
group
  header X-Spam-Flag  == "YES"
  header Subject      =~ "^((my|new)\\s)?PH[a-z]*A?[a-z]*R[a-z]*MA"
  header Subject      =~ "^ME[a-z]*DS"
endgroup
and
!anydomain             "my\\\\.university\\\\.ac\\\\.uk"

[uni/sysadmin]
# auto-archive to $archive-path/$1
@ARCHIVE uni-sysadmin
anyaddress          =~ "sysadmin@([^@]+\\\\.)?my\\\\.university\\\\.ac\\\\.uk"

[uni/careers]
@ARCHIVE careers
# Minimum vacation level needed to send an automatic reply
@VACATION 2
header Subject  =| "careers"
header Subject  =| "internship"
anydomain          "milkround\\\\.com"

[project]
@ARCHIVE project
@VACATION 1
header Subject =| "[Project]"

# Automatically puts messages from mailing lists into folders by mailing list
# name
[lists/$1]
header X-BeenThere =~ "([^.]+)\\\\.my\\\\.university\\\\.ac\\\\.uk"

# Automatically forward emails from the ISP to housemates
[web/BeThere]
@ARCHIVE BeThere
anydomain         "beunlimited\\\\.co\\\\.uk"
custom
  # forward email?
  if $h_Subject: matches "Update from Brett @ Be"
  or $h_Subject: matches "Maintenance"
  then
    deliver "Housemate One <housemate.1@myhouse.invalid>"
    deliver "Housemate Two <housemate.2@myhouse.invalid>"
    deliver "Housemate Three <housemate.3@myhouse.invalid>"
    deliver "Housemate Four <housemate.4@myhouse.invalid>"
  endif
endcustom

[web/gentoo]
@ARCHIVE gentoo
anydomain "gentoo\\\\.org"

[personal/Family]
@ARCHIVE Family
@VACATION 1
header From =~ "@myfamily\\\\.invalid\\$"
header From =~ "@my-other-family\\\\.invalid\\$"

[personal/system]
header From =| "nobody@my-home-system.invalid"

[uni/summerwork]
@DISABLED
@ARCHIVE summerwork
header Subject =| "summer work"

[!DESTROY!]
and
anyaddress  =~ "sysadmins@dept\\\\.my\\\\.university\\\\.ac\\\\.uk"
header From =| "irritating_newbie@my.university.ac.uk"

[projects/AutoLiveCD]
header Subject =| "AutoLiveCD"

[web/TfL]
header From =| "alerts@tflwap.gov.uk"
header From =| "Transport_for_London@xmr3.com"

[!UNDELIVERED!]
# if not delivered
@ARCHIVE INBOX
@VACATION 4
saveto .email
