mail: Add checkmail routine

Added script to call for checking mail. Will run individual pre- and
post-hooks. (By default, imapfilter and notmuch update.)

Simple options can be changed through environment variables:

Hooks can be set to different scripts with MBSYNC_PRE and
MBSYNC_POST, respectively.

Will also run mbsync repeatedly, until it exits without error. By
default it will try running it 3 times before giving up, this can be set
with MBSYNC_MAX_TRIES.

No functional imapfilters have been added yet.

mbsync and imapfilter both adhere to the XDG base directory layout
(somewhat), checking for their option files in .config/{isync,imapfilter}
respectively.

Everything still pending changes, the mail eco-system is hard to
wrap one's head around.
This commit is contained in:
Marty Oehme 2020-09-16 18:49:08 +02:00
parent 674b1cfeac
commit 3bbb7d0360
Signed by: Marty
GPG key ID: B7538B8F50A1C800
7 changed files with 112 additions and 12 deletions

View file

@ -10,27 +10,26 @@ PassCmd "pass show misc/aerc-gmail-app-password | head -n1"
#
# Use SSL
SSLType IMAPS
# The following line should work. If get certificate errors, uncomment the two following lines and read the "Troubleshooting" section.
CertificateFile /etc/ssl/certs/ca-certificates.crt
#CertificateFile ~/.cert/imap.gmail.com.pem
#CertificateFile ~/.cert/Equifax_Secure_CA.pem
PipelineDepth 50
# Throttle simultaneous access to make google happy
PipelineDepth 60
IMAPStore gmail-remote
Account gmail
MaildirStore gmail-local
MaildirStore mail-local
Subfolders Verbatim
# The trailing "/" is important
Path ~/documents/mail/
Inbox ~/documents/mail/Inbox
# define generous maximum size to store locally
MaxSize 50M
Channel gmail
Channel gmail-general
Far :gmail-remote:
Near :gmail-local:
Near :mail-local:
# Exclude everything under the internal [Gmail] folder, except the interesting folders
Patterns * ![Gmail]* "[Gmail]/Sent Mail" "[Gmail]/Starred" "[Gmail]/All Mail"
# Or include everything
Patterns * ![Gmail]* "[Gmail]/Sent Mail" "[Gmail]/Starred" "[Gmail]/All Mail" "[Gmail]/Trash"
#Patterns *
# Automatically create missing mailboxes, both locally and on the server
Create Both