diff --git a/mail/.mailcap b/mail/.mailcap new file mode 100644 index 0000000..f9077b7 --- /dev/null +++ b/mail/.mailcap @@ -0,0 +1,2 @@ +text/plain; cat %s +text/html; w3m -dump -o document_charset=%{charset} -o display_link_number=1 '%s'; nametemplate=%s.html; copiousoutput diff --git a/mail/.msmtprc b/mail/.msmtprc new file mode 100644 index 0000000..9a25689 --- /dev/null +++ b/mail/.msmtprc @@ -0,0 +1,17 @@ + + +defaults +auth on +tls on +tls_trust_file /etc/ssl/certs/ca-certificates.crt +logfile /home/USER/msmtp.log + +account [NAME] +host smtp.[PROVIDER].com +port 465 +from [MAIL] +user [MAIL] +tls_starttls off + +passwordeval /usr/bin/pass mail/[MAIL] + diff --git a/mail/.notmuch-config b/mail/.notmuch-config new file mode 100644 index 0000000..741e5f8 --- /dev/null +++ b/mail/.notmuch-config @@ -0,0 +1,77 @@ +# .notmuch-config - Configuration file for the notmuch mail system +# +# For more information about notmuch, see https://notmuchmail.org +# Database configuration +# +# The only value supported here is 'path' which should be the top-level +# directory where your mail currently exists and to where mail will be +# delivered in the future. Files should be individual email messages. +# Notmuch will store its database within a sub-directory of the path +# configured here named ".notmuch". +# +[database] +# User configuration +# +# Here is where you can let notmuch know how you would like to be +# addressed. Valid settings are +# +# name Your full name. +# primary_email Your primary email address. +# other_email A list (separated by ';') of other email addresses +# at which you receive email. +# +# Notmuch will use the various email addresses configured here when +# formatting replies. It will avoid including your own addresses in the +# recipient list of replies, and will set the From address based on the +# address to which the original email was addressed. +# +[user] +name=Max Muster +primary_email=[MAIL] +# Configuration for "notmuch new" +# +# The following options are supported here: +# +# tags A list (separated by ';') of the tags that will be +# added to all messages incorporated by "notmuch new". +# +# ignore A list (separated by ';') of file and directory names +# that will not be searched for messages by "notmuch new". +# +# NOTE: *Every* file/directory that goes by one of those +# names will be ignored, independent of its depth/location +# in the mail store. +# +[new] +# Search configuration +# +# The following option is supported here: +# +# exclude_tags +# A ;-separated list of tags that will be excluded from +# search results by default. Using an excluded tag in a +# query will override that exclusion. +# +[search] +# Maildir compatibility configuration +# +# The following option is supported here: +# +# synchronize_flags Valid values are true and false. +# +# If true, then the following maildir flags (in message filenames) +# will be synchronized with the corresponding notmuch tags: +# +# Flag Tag +# ---- ------- +# D draft +# F flagged +# P passed +# R replied +# S unread (added when 'S' flag is not present) +# +# The "notmuch new" command will notice flag changes in filenames +# and update tags, while the "notmuch tag" and "notmuch restore" +# commands will notice tag changes and update flags in filenames +# +[maildir] diff --git a/mail/.offlineimaprc b/mail/.offlineimaprc new file mode 100644 index 0000000..4bdb9ff --- /dev/null +++ b/mail/.offlineimaprc @@ -0,0 +1,1434 @@ +# Offlineimap sample configuration file + +# This file documents *all* possible options and can be quite scary. +# Looking for a quick start? Take a look at offlineimap.conf.minimal. +# More details can be found at http://www.offlineimap.org . + +################################################## +# Overview +################################################## + +# The default configuration file is "~/.offlineimaprc". +# +# Offlineimap ships with a file named "offlineimap.conf" that you should copy to +# that location and then edit. +# +# Offlineimap also ships a file named "offlineimap.conf.minimal" that you can +# also try. It's useful if you want to get started with the most basic feature +# set, and you can read about other features later with "offlineimap.conf". +# +# If you want to be XDG-compatible, you can put your configuration file into +# "$XDG_CONFIG_HOME/offlineimap/config". + +################################################## +# General definitions +################################################## + +# NOTE 1: Settings generally support python interpolation. This means +# values can contain python format strings which refer to other values +# in the same section, or values in a special DEFAULT section. This +# allows you for example to use common settings for multiple accounts: +# +# [Repository Gmail1] +# trashfolder: %(gmailtrashfolder)s +# +# [Repository Gmail2] +# trashfolder: %(gmailtrashfolder)s +# +# [DEFAULT] +# gmailtrashfolder = [Gmail]/Papierkorb +# +# would set the trashfolder setting for your German Gmail accounts. + +# NOTE 2: Above feature implies that any '%' needs to be encoded as '%%' + +# NOTE 3: Any variable that is subject to the environment variables +# ($NAME) and tilde (~username/~) expansions will receive tilde +# expansion first and only after the environment variable will be +# expanded in the resulting string. This behaviour is intentional +# as it coincides with typical shell expansion strategy. + +# NOTE 4: multiple same-named sections. +# The library used to parse the configuration file has known issue when multiple +# sections have the same name. In such case, only the last section is considered. +# It is strongly discouraged to have multiple sections with the same name. +# See https://github.com/OfflineIMAP/offlineimap/issues/143 for more details. + +[general] + +# This specifies where Offlineimap is to store its metadata. +# This directory will be created if it does not already exist. +# +# Tilde and environment variable expansions will be performed. +# +#metadata = ~/.offlineimap + + +# This option stands in the [general] section. +# +# This variable specifies which accounts are defined. Separate them with commas. +# Account names should be alphanumeric only. You will need to specify one +# section per account below. You may not use "general" for an account name. +# +# Always use ASCII characters only. +# +accounts = [ACCOUNTNAME] + + +# This option stands in the [general] section. +# +# Offlineimap can synchronize more than one account at a time. There are two +# ways to sync accounts concurrently: +# +# 1. By running one offlineimap instance for each account (with the -a CLI +# option). This is the recommended way. In this case, keep the following option +# to 1. +# +# 2. By allowing offlineimap to sync more than one account for an instance (not +# recommended). In this case, set the maxsyncaccounts option to a value greater +# than 1. +# +#maxsyncaccounts = 1 + + +# This option stands in the [general] section. +# +# You can specify one or more user interface. Offlineimap will try the first in +# the list, and if it fails, the second, and so forth. +# +# The pre-defined options are: +# Blinkenlights -- A fancy (terminal) interface +# TTYUI -- a text-based (terminal) interface +# Basic -- Noninteractive interface suitable for cron'ing +# Quiet -- Noninteractive interface, generates no output +# except for errors. +# MachineUI -- Interactive interface suitable for machine +# parsing. +# +# See also offlineimapui(7) +# +# You can override this with a command-line option -u. +# +#ui = basic + + +# This option stands in the [general] section. +# +# If you try to synchronize messages to a folder which the IMAP server +# considers read-only, Offlineimap will generate a warning. If you want +# to suppress these warnings, set ignore-readonly to yes. Read-only +# IMAP folders allow reading but not modification, so if you try to +# change messages in the local copy of such a folder, the IMAP server +# will prevent Offlineimap from propagating those changes to the IMAP +# server. Note that ignore-readonly is UNRELATED to the "readonly" +# setting which prevents a repository from being modified at all. +# +#ignore-readonly = no + + +########## Advanced settings + +# This option stands in the [general] section. +# +# You can give a Python source filename here and all config file +# python snippets will be evaluated in the context of that file. +# This allows you to e.g. define helper functions in the Python +# source file and call them from this config file. You can find +# an example of this in the manual. +# +# Tilde and environment variable expansions will be performed. +# +#pythonfile = ~/.offlineimap.py + + +# This option is in the [general] section. +# +# By default, Offlineimap will not exit due to a network error until the +# operating system returns an error code. Operating systems can sometimes take +# forever to notice this. Here you can activate a timeout on the socket. This +# timeout applies to individual socket reads and writes, not to an overall sync +# operation. You could perfectly well have a 30s timeout here and your sync +# still take minutes. +# +# Values in the 30-120 second range are reasonable. +# +# The default is to have no timeout beyond the OS. Times are given in seconds. +# +#socktimeout = 60 + + +# This option stands in the [general] section. +# +# By default, Offlineimap will use fsync() to force data out to disk at +# opportune times to ensure consistency. This can, however, reduce performance. +# Users where /home is on SSD (Flash) may also wish to reduce write cycles. +# Therefore, you can disable Offlineimap's use of fsync(). Doing so will come +# at the expense of greater risk of message duplication in the event of a system +# crash or power loss. Default is true. Set it to false to disable fsync. +# +# SQLite honors this option since v7.0.8+. However, those SQLite improvements +# are still EXPERIMENTAL. +# +#fsync = true + + +################################################## +# Mailbox name recorder +################################################## + +[mbnames] + +# Offlineimap can record your mailbox names in a format you specify. +# You can define the header, each mailbox item, the separator, +# and the footer. Here is an example for Mutt. +# If enabled is yes, all settings except incremental must be specified, even if +# they are just the empty string "". +# +# The header, peritem, sep, and footer are all Python expressions passed +# through eval, so you can (and must) use Python quoting. +# +# The incremental setting controls whether the file is written after each +# account completes or once all synced accounts are complete. This is useful if +# an account is sightly slower than the other. It allows keeping the previous +# file rather than having it partially written. +# This works best with "no" if in one-shot mode started by cron or systemd +# timers. Default: no. +# +# The following hash key are available to the expansion for 'peritem': +# - accountname: the name of the corresponding account; +# - foldername: the name of the folder; +# - localfolders: path to the local directory hosting all Maildir +# folders for the account. +# +# Tilde and environment variable expansions will be performed +# for "filename" knob. +# +#enabled = no +filename = ~/Mutt/muttrc.mailboxes +header = "mailboxes " +peritem = "+%(accountname)s/%(foldername)s" +sep = " " +footer = "\n" +incremental = no + + +# This option stands in the [mbnames] section. +# +# You can also specify a folderfilter. It will apply to the *translated* folder +# name here, and it takes TWO arguments: accountname and foldername. In all +# other ways, it will behave identically to the folderfilter for accounts. +# Please see the folderfilter option for more information and examples. +# +# This filter can be used only to further restrict mbnames to a subset of +# folders that pass the account's folderfilter. +# +# E.g.: with mbnames_folderfilter defined like this in the python file: +# +# def mbnames_folderfilter(accountname, foldername): +# allowed = {'myaccount': ['folderA', 'folderB']} +# if accountname in allowed: +# return foldername in allowed[accountname] +# return False +# +# For correct folderfilter with Microsoft servers, please see +# http://www.offlineimap.org/doc/FAQ.html#exchange-and-office365 +# +#folderfilter = mbnames_folderfilter + + +# This option stands in the [mbnames] section. +# +# You can customize the order in which mailbox names are listed in the generated +# file by specifying a sort_keyfunc, which takes a single dict argument +# containing keys 'accountname' and 'foldername'. This function will be called +# once for each mailbox, and should return a suitable sort key that defines this +# mailbox' position in the custom ordering. +# +# This is useful with e.g. Mutt-sidebar, which uses the mailbox order from the +# generated file when listing mailboxes in the sidebar. +# +# Default setting is: +#sort_keyfunc = lambda d: (d['accountname'], d['foldername']) + + +################################################## +# Accounts +################################################## + +# This is an account definition clause. You'll have one of these for each +# account listed in the "accounts" option in [general] section (above). + +[Account [ACCOUNTNAME]] + +# These settings specify the two folders that you will be syncing. +# You'll need to have a "Repository ..." section for each one. + +localrepository = LocalKolabnow +remoterepository = RemoteKolabnow + + +########## Advanced settings + +# This option stands in the [Account Test] section. +# +# You can have Offlineimap continue running indefinitely, automatically syncing +# your mail periodically. If you want that, specify how frequently to do that +# (in minutes) here. Fractional minutes (ie, 3.25) is allowed. +# +# If you want more than one account concurrently synced in one instance of +# offlineimap (not recommended), don't forget to increase the maxsyncaccounts +# option accordingly. +# +# NOTE: If you run systemd it's recommended to not enable this option and use +# the systemd timer instead (see the ./contrib/systemd/ directory in the +# repository). +# +#autorefresh = 5 + + +# This option stands in the [Account Test] section. +# +# OfflineImap can replace a number of full updates by quick synchronizations. +# This option is ignored if maxage or startdate are used. +# +# It only synchronizes a folder if +# +# 1) a Maildir folder has changed +# +# or +# +# 2) if an IMAP folder has received new messages or had messages deleted, ie +# it does not update if only IMAP flags have changed. +# +# Full updates need to fetch ALL flags for all messages, so this makes quite a +# performance difference (especially if syncing between two IMAP servers). +# +# Specify 0 for never, -1 for always (works even in non-autorefresh mode) +# +# A positive integer to do quick updates before doing another full +# synchronization (requires autorefresh). Updates are always performed after +# minutes, be they quick or full. +# +#quick = 10 + + +# This option stands in the [Account Test] section. +# +# You can specify a pre and post sync hook to execute a external command. In +# this case a call to imapfilter to filter mail before the sync process starts +# and a custom shell script after the sync completes. +# +# The pre sync script has to complete before a sync to the account will start. +# +#presynchook = imapfilter -c someotherconfig.lua +#postsynchook = notifysync.sh + + +# This option stands in the [Account Test] section. +# +# If you have a limited amount of bandwidth available you can exclude larger +# messages (e.g. those with large attachments etc). If you do this it will +# appear to Offlineimap that these messages do not exist at all. They will not +# be copied, have flags changed etc. For this to work on an IMAP server the +# server must have server side search enabled. This works with Gmail and most +# imap servers (e.g. cyrus etc) +# +# The maximum size should be specified in bytes - e.g. 2000000 for approx 2MB +# +#maxsize = 2000000 + + +# This option stands in the [Account Test] section. +# +# maxage enables you to sync only recent messages. There are two ways to specify +# what "recent" means: if maxage is given as an integer, then only messages from +# the last maxage days will be synced. If maxage is given as a date, then only +# messages later than that date will be synced. +# +# Messages older than the cutoff will not be synced, their flags will not be +# changed, they will not be deleted, etc. For Offlineimap it will be like these +# messages do not exist. This will perform an IMAP search in the case of IMAP or +# Gmail and therefore requires that the server support server side searching. +# +# Known edge cases are described in offlineimap(1). +# +# maxage is allowed only when the local folder is of type Maildir. It can't be +# used with startdate. +# +# The maxage option expects an integer (for the number of days) or a date of the +# form yyyy-mm-dd. +# +maxage = 180 +#maxage = 2025-04-01 + + +# This option stands in the [Account Test] section. +# +# Maildir file format uses colon (:) separator between uniq name and info. +# Unfortunately colon is not allowed character in windows file name. If you +# enable maildir-windows-compatible option, Offlineimap will be able to store +# messages on windows drive, but you will probably loose compatibility with +# other programs working with the maildir. +# +#maildir-windows-compatible = no + + +# This option stands in the [Account Test] section. +# +# Specifies if we want to sync GMail labels with the local repository. +# Effective only for GMail IMAP repositories. +# +# Non-ASCII characters in labels are bad handled or won't work at all. +# +#synclabels = no + + +# This option stands in the [Account Test] section. +# +# Name of the header to use for label storage. Format for the header +# value differs for different headers, because there are some de-facto +# "standards" set by popular clients: +# +# - X-Label or Keywords keep values separated with spaces; for these +# you, obviously, should not have label values that contain spaces; +# +# - X-Keywords use comma (',') as the separator. +# +# To be consistent with the usual To-like headers, for the rest of header +# types we use comma as the separator. +# +# Use ASCII characters only. +# +#labelsheader = X-Keywords + + +# This option stands in the [Account Test] section. +# +# Set of labels to be ignored. Comma-separated list. GMail-specific +# labels all start with backslash ('\'). +# +# Use ASCII characters only. +# +#ignorelabels = \Inbox, \Starred, \Sent, \Draft, \Spam, \Trash, \Important + + +# This option stands in the [Account Test] section. +# +# Offlineimap can strip off some headers when your messages are propagated +# back to the IMAP server. This option carries the comma-separated list +# of headers to trim off. Header name matching is case-sensitive. +# +# This knob is respected only by IMAP-based accounts. Value of labelsheader +# for GMail-based accounts is automatically added to this list, you don't +# need to specify it explicitly. +# +# Use ASCII characters only. +# +#filterheaders = X-Some-Weird-Header + + +# This option stands in the [Account Test] section. +# +# Use proxy connection for this account. Useful to bypass the GFW in China. +# To specify a proxy connection, join proxy type, host and port with colons. +# Available proxy types are SOCKS5, SOCKS4, HTTP. +# You also need to install PySocks through pip. +# +# Currently, this feature leaks DNS support. +# +#proxy = SOCKS5:IP:9999 + + +# EXPERIMENTAL: This option stands in the [Account Test] section. +# +# IMAP defines an encoding for non-ASCII ("international") characters, and most +# IMAP servers store folder names in this encoding. Note that the IMAP 4rev1 +# specification (RFC 3501) allows both UTF-8 and modified UTF-7 folder names +# so it is *possible* that an IMAP server already uses UTF-8 encoded folder +# names. But usually Folders that are shown as, say, "Gäste" will be represented +# as "G&AOQ-ste", and by default will be synchronized like this by offlineIMAP. +# +# This option converts IMAP folder names from IMAP4-UTF-7 to UTF-8 and back +# in order to have nicely readable UTF-8 folder names in the local copy. +# +# WARNING: with this option enabled: +# - compatibility with any other version is NOT GUARANTEED (including newer); +# - existing set-ups will probably break. +# - no support is provided. +# +# IMPORTANT: READ THIS SECTION if you intend to enable this feature for an +# EXISTING ACCOUNT that has already been synchronized! +# Enabling UTF-8 encoded folder names will change many things on the local +# repository of an account, so you really have to create a new local repository +# and review the configuration. The least that would happen otherwise is a +# duplication of all folders containing non-ASCII characters. +# But also the following functionality may change, so the configuration in the +# remote repository configuration has to be reviewed/updated: +# - decodefoldernames +# This option is replaced by utf8foldernames and must be removed +# If both utf8foldernames and decodefoldernames are enabled the synchronization +# for the given account is aborted before doing any changes. +# - nametrans +# With utf8foldernames enabled any nametrans function will operate on the +# UTF-8 encoded folder names, while even with decodefoldernames enabled they +# operate on the original IMAP4-UTF-7 encoded names. +# - folderfilter +# Folder filters still work on the untranslated names before applying a +# nametrans function, but still this operates on the UTF-8 encoded names. +# - folderincludes +# With utf8foldernames enabled this function expects UTF-8 encoded folder +# names. +# - foldersort +# With utf8foldernames enabled the folder names passed to the sorting routine +# will be the UTF encoded names. +# - idlefolders +# With utf8foldernames enabled folders passed to this function are expected to +# be UTF-8 encoded. +# +#utf8foldernames = no + + +# TESTING: This option stands in the [Account Test] section. +# +# Use authproxy connection for this account. Useful to bypass the GFW in China. +# Set this if you wish to use a proxy for authentication but not for IMAP. +# If not explicitly set, this option defaults to use the proxy socket +# (so as to be compatible with prior config files). +# If that is specifically NOT desired, use authproxy = '' +# +# To specify a proxy connection, join proxy type, host and port with colons. +# Available proxy types are SOCKS5, SOCKS4, HTTP. +# You also need to install PySocks through pip or your distro package manager. +# +#authproxy = SOCKS5:IP:9999 + + +[Repository LocalKolabnow] + +# Each repository requires a "type" declaration. The types supported for +# local repositories are Maildir, GmailMaildir and IMAP. +# +type = Maildir + + +# This option stands in the [Repository LocalExample] section. +# +# Specify local repository. Your IMAP folders will be synchronized +# to maildirs created under this path. Offlineimap will create the +# maildirs for you as needed. +# +localfolders = ~/mail/.kolabnow + + +# This option stands in the [Repository LocalExample] section. +# +# You can specify the "folder separator character" used for your Maildir +# folders. It is inserted in-between the components of the tree. If you +# want your folders to be nested directories, set it to "/". 'sep' is +# ignored for IMAP repositories, as it is queried automatically. +# Otherwise, default value is ".". +# +# Don't use quotes. +# +#sep = . + + +# This option stands in the [Repository LocalExample] section. +# +# startdate syncs mails starting from a given date. It applies the date +# restriction to LocalExample only. The remote repository MUST be empty +# at the first sync where this option is used. +# +# Unlike maxage, this is supported for IMAP-IMAP sync. +# +# startdate can't be used with maxage. +# +# The startdate option expects a date in the format yyyy-mm-dd. +# +#startdate = 2015-04-01 + + +# This option stands in the [Repository LocalExample] section. +# +# Propagate deletions from local to remote. Messages deleted in this repository +# won't get deleted on remote if set to "no". Default is yes. +# +# See sync_deletes in the RemoteExample section, too. +# +#sync_deletes = yes + + +# This option stands in the [Repository LocalExample] section. +# +# Some users may not want the atime (last access time) of folders to be +# modified by Offlineimap. If 'restoreatime' is set to yes, Offlineimap +# will restore the atime of the "new" and "cur" folders in each maildir +# folder to their original value after each sync. +# +# In nearly all cases, the default should be fine. +# +#restoreatime = no + + +# This option stands in the [Repository LocalExample] section. +# +# Set modification time of messages basing on the message's "Date" header. This +# option makes sense for the Maildir type, only. +# +# This is useful if you are doing some processing/finding on your Maildir (for +# example, finding messages older than 3 months), without parsing each +# file/message content. +# +# This option is not compatible with -q (quick mode) CLI option for GmailMaildir +# types. +# +# Default: no. +# +#utime_from_header = no + + +# This option stands in the [Repository LocalExample] section. +# +# This option is similar to "utime_from_header" and could be used as a +# complementary feature to keep track of a message date. This option only +# makes sense for the Maildir type. +# +# By default each message is stored in a file which prefix is the fetch +# timestamp and an order rank such as "1446590057_0". In a multithreading +# environment message are fetched in a random order, then you can't trust +# the filename to sort your boxes. +# +# If set to "yes" the filename prefix is built from the message "Date" header +# (which should be present) or the "Received-date" if "Date" is not +# found. If neither "Received-date" nor "Date" is found, the current system +# date is used. Now you can quickly sort your messages using their filenames. +# +# Used in combination with "utime_from_header" all your message would be in +# order with the correct mtime attribute. +# +#filename_use_mail_timestamp = no + + +# This option stands in the [Repository LocalExample] section. +# +# Map IMAP [user-defined] keywords to lowercase letters, similar to Dovecot's +# format described in http://wiki2.dovecot.org/MailboxFormat/Maildir . This +# option makes sense for the Maildir type, only. +# +# Configuration example: +# customflag_x = some_keyword +# +# With the configuration example above enabled, all IMAP messages that have +# 'some_keyword' in their FLAGS field will have an 'x' in the flags part of the +# maildir filename: +# 1234567890.M20046P2137.mailserver,S=4542,W=4642:2,Sx +# +# Valid fields are customflag_[a-z], valid values are whatever the IMAP server +# allows. +# +# Comparison in Offlineimap is case-sensitive. +# +#customflag_a = some_keyword +#customflag_b = $OtherKeyword +#customflag_c = NonJunk +#customflag_d = ToDo + +[Repository GmailLocalExample] + +# This type of repository enables syncing of Gmail. All Maildir +# configuration settings are also valid here but the utime_from_header. +# +# This is a separate Repository type from Maildir because it involves +# some extra overhead which sometimes may be significant. We look for +# modified tags in local messages by looking only to the files +# modified since last run. This is usually rather fast, but the first +# time Offlineimap runs with synclabels enabled, it will have to check +# the contents of all individual messages for labels and this may take +# a while. +# +type = GmailMaildir + + +[Repository RemoteKolabnow] + +# The remote repository. We only support IMAP or Gmail here. +# +type = IMAP + + +# This option stands in the [Repository RemoteExample] section. +# +# Configure which address family to use for the connection. If not specified, +# AF_UNSPEC is used as a fallback (default). +# +# AF_INET6: +#ipv6 = True +# +# AF_INET: +#ipv6 = False + + +# These options stands in the [Repository RemoteExample] section. +# +# The following can fetch the account credentials via a python expression that +# is parsed from the pythonfile parameter. For example, a function called +# "getcredentials" that parses a file "filename" and returns the account +# details for "hostname". +# +# +#remotehosteval = getcredentials("filename", "hostname", "hostname") +# +# The returned value must be int type. +#remoteporteval = getcredentials("filename", "hostname", "port") +# +# The returned value must be unicode type. +#remoteusereval = getcredentials("filename", "hostname", "user") +# +# The returned value must be unicode type. +#remotepasseval = getcredentials("filename", "hostname", "passwd") + + +# This option stands in the [Repository RemoteExample] section. +# +# Specify the remote hostname. +# +remotehost = [REMOTEHOST.COM] + + +# This option stands in the [Repository RemoteExample] section. +# +# Whether or not to use STARTTLS. STARTTLS allows to upgrade a plain connection +# to TLS or SSL after negotiation with the server. While a server might pretend +# to support STARTTLS, the communication might not be properly established or +# the secure tunnel might be broken in some way. In this case you might want to +# disable STARTTLS. Unless you hit issues with STARTTLS, you are strongly +# encouraged to keep STARTTLS enabled. +# +# STARTTLS can be used even if the 'ssl' option is disabled. If you want to +# _force_ STARTTLS, you might need to disable 'ssl'. +# +# Default is yes. +# +#starttls = yes + + +# This option stands in the [Repository RemoteExample] section. +# +# Whether or not to use SSL. +# +# Note: be care to configure the 'remotehost' line with the domain name defined +# in the certificate. E.g., if you trust your provider and want to use the +# certificate it provides on a shared server. Otherwise, Offlineimap will stop +# and say that the domain is not named in the certificate. +# +# Default is yes. +# +ssl = yes + + +# This option stands in the [Repository RemoteExample] section. +# +# SSL Client certificate (optional). +# +# Tilde and environment variable expansions will be performed. +# +#sslclientcert = /etc/ssl/certs/ca-certificates.crt + + +# This option stands in the [Repository RemoteExample] section. +# +# SSL Client key (optional). +# +# Tilde and environment variable expansions will be performed. +# +#sslclientkey = /path/to/file.key + + +# This option stands in the [Repository RemoteExample] section. +# +# SSL CA Cert(s) to verify the server cert against (optional). +# No SSL verification is done without this option. If it is +# specified, the CA Cert(s) need to verify the Server cert AND +# match the hostname (* wildcard allowed on the left hand side) +# The certificate should be in PEM format. +# +# Tilde and environment variable expansions will be performed. +# +# Special value OS-DEFAULT makes Offlineimap to automatically +# determine system-wide location of standard trusted CA roots file +# for known OS distributions and use the first bundle encountered +# (if any). If no system-wide CA bundle is found, Offlineimap +# will refuse to continue; this is done to prevent creation +# of false security expectations ("I had configured CA bundle, +# thou certificate verification shalt be present"). +# +# You can also use fingerprint verification via cert_fingerprint. +# See below for more verbose explanation. +# +sslcacertfile = /etc/ssl/certs/ca-certificates.crt + + +# This option stands in the [Repository RemoteExample] section. +# +# If you connect via SSL/TLS (ssl = yes) and you have no CA certificate +# specified, Offlineimap will refuse to sync as it connects to a server +# with an unknown "fingerprint". If you are sure you connect to the +# correct server, you can then configure the presented server +# fingerprint here. Offlineimap will verify that the server fingerprint +# has not changed on each connect and refuse to connect otherwise. +# +# You can also configure fingerprint validation in addition to +# CA certificate validation above and it will check both: +# Offlineimap fill verify certificate first and if things will be fine, +# fingerprint will be validated. +# +# Multiple fingerprints can be specified, separated by commas. +# +# In Windows, Microsoft uses the term "thumbprint" instead of "fingerprint". +# +# Supported fingerprint hashes are sha512, sha384, sha256, sha224 and sha1. +# Fingerprints must be in hexadecimal form without leading '0x', and may have +# the separating colons. This is non case-sensitive. +# Examples: +# sha1 "bbfe29cf97acb204591edbafe0aa8c8f914287c9". +# sha1 with colons "BB:FE:29:CF:97:AC:B2:04:59:1E:DB:AF:E0:AA:8C:8F:91:42:87:C9" +# +#cert_fingerprint = [, ] + + +# This option stands in the [Repository RemoteExample] section. +# +# Set SSL version to use (optional). +# +# It is best to leave this unset, in which case the correct version will be +# automatically detected. In rare cases, it may be necessary to specify a +# particular version from: tls1, tls1_1, tls1_2, ssl3, ssl23. +# +# tls1_1 and tls1_2 are available with OpenSSL since v1.0.1. +# +# ssl23 automatically selects the highest protocol version that both the client +# and server support. Despite the name, this option can select “TLS” protocols +# as well as “SSL”. +# +# Be aware that a MITM attack can consist in downgrading the protocol version +# which is used upon client/server agreement. So, they might fallback to the +# less secure available protocol. Hence, it is considered more safe to manually +# define the protocol version. +# +# See the configuration option tls_level to disable insecure protocols. +# +#ssl_version = ssl23 + + +# This option stands in the [Repository RemoteExample] section. +# +# TLS support level (optional). +# +# Specify the level of support that should be allowed for this repository. +# Can be used to enable insecure SSL versions as defined by imaplib2. +# See, IETF https://tools.ietf.org/html/rfc6176 to know more. +# +# Supported values are: +# tls_secure, tls_no_ssl, tls_compat (default). +# +# Current mapping: +# - tls_secure: +# - tls1_1 +# - tls1_2 +# - tls_no_ssl: +# - all tls_secure +# - tls1 (less desirable than tls1_1 or higher) +# - tls_compat +# - all tls_no_ssl +# - ssl3 (less desirable than tls1) +# - ssl23 (can fallback up to ssl3) +# +# When tls_level is not set to tls_compat and ssl is still enabled, +# the ssl_version configuration option must be explicitly set. +# +#tls_level = tls_compat + + +# This option stands in the [Repository RemoteExample] section. +# +# Specify the port. If not specified, use a default port. +# +#remoteport = 993 + + +# This option stands in the [Repository RemoteExample] section. +# +# Specify the remote user name. +# +remoteuser = [MAIL] + + +# This option stands in the [Repository RemoteExample] section. +# +# Specify the user to be authorized as. Sometimes we want to +# authenticate with our login/password, but tell the server that we +# really want to be treated as some other user; perhaps server will +# allow us to do that (or maybe not). Some IMAP servers migrate +# account names using this functionality: your credentials remain +# intact, but remote identity changes. +# +# Currently this variable is used only for SASL PLAIN authentication +# mechanism, so consider using auth_mechanisms to prioritize PLAIN +# or even make it the only mechanism to be tried. +# +#remote_identity = authzuser + + +# This option stands in the [Repository RemoteExample] section. +# +# Specify which authentication/authorization mechanisms we should try and the +# order in which Offlineimap will try them. +# +# NOTE: any given mechanism will be tried ONLY if it is supported by the remote +# IMAP server. +# +# Default value is ranged is from strongest to more weak ones. Due to technical +# limitations, if GSSAPI is set, it will be tried first, no matter where it was +# specified in the list. +# +#auth_mechanisms = GSSAPI, XOAUTH2, CRAM-MD5, PLAIN, LOGIN + + +# This option stands in the [Repository RemoteExample] section. +# +# XOAUTH2 authentication (for instance, to use with Gmail). +# +# This option was tested on Gmail only, but should work with type = IMAP for +# compatible servers. +# +# For Gmail (and maybe others), XOAUTH2 requires ssl. This means that STARTTLS +# won't work and that Offlineimap will perform certificate validation. IOW, the +# following configuration is used: +# - sslcacertfile: MUST BE correctly configured +# - ssl = yes (optional, will be used anyway) +# - starttls = no (optional, will be tried but won't work anyway) +# +# Mandatory parameters are "oauth2_client_id", "oauth2_client_secret" and +# either "oauth2_refresh_token" or "oauth2_access_token". XOAUTH2 mechanism +# won't be tried if both oauth2_refresh_token and oauth2_access_token are not +# set. +# +# See below to learn how to get those. +# +# Specify the OAuth2 client id and secret to use for the connection.. +# Here's how to register an OAuth2 client for Gmail, as of 2017-05-15: +# - Go to the Gmail API overview console +# https://console.developers.google.com/apis/api/gmail.googleapis.com/overview +# - Create a new project, name doesn't matter, e.g. 'gmail-sync-bob' +# - In API & Auth, select Credentials +# - Once created, click 'Enable' +# - Click 'Create credentials' in the enabled API overview + +# - In 'Add credentials to your project' select 'Gmail API' as the +# API type, and 'Other UI ...' (not 'Other non-UI ...') for +# 'Where will you be calling the API from?'. For 'What data will +# you be accessing?' select 'User data'. +# - Click 'What credentials do I need?' +# - Create an arbitrary 'Create an OAuth 2.0 client ID', +# e.g. 'gmail-sync-bob-client'. For 'Set up the OAuth 2.0 consent +# screen' select an arbitrary 'Product name shown to users', +# e.g. 'gmail-sync-bob-client' & click 'Continue'. +# - This gives you your client ID displayed on the screen. Click +# 'Download' to get a JSON file that also has the client secret. +# +#oauth2_client_id = YOUR_CLIENT_ID +#oauth2_client_secret = YOUR_CLIENT_SECRET +# +# The return values must be str. +#oauth2_client_id_eval = get_client_id("accountname") +#oauth2_client_secret_eval = get_client_secret("accountname") +# +# Specify the refresh token to use for the connection to the mail server. +# Here's an example of a way to get a refresh token: +# - Clone this project: https://github.com/google/gmail-oauth2-tools +# - Type the following command-line in a terminal and follow the instructions +# python python/oauth2.py --generate_oauth2_token \ +# --client_id=YOUR_CLIENT_ID --client_secret=YOUR_CLIENT_SECRET +# - Access token can be obtained using refresh token with command +# python python/oauth2.py --user=YOUR_EMAIL --client_id=YOUR_CLIENT_ID +# --client_secret=YOUR_CLIENT_SECRET --refresh_token=REFRESH_TOKEN +# +# Access tokens have limited lifetimes. If you need access beyond the lifetime +# of a single access token, you should use a refresh token. A refresh token +# allows Offlineimap to obtain new access tokens. +# +# If you want to use a refresh token, make sure you disabled/removed any +# oauth2_access_token option. The access token is downloaded from the URL +# defined in the oauth2_request_url configuration option. +# +# If the type of the remote is IMAP, oauth2_request_url MUST be defined. +# For Gmail, the default URL is https://accounts.google.com/o/oauth2/token. +# +# If you're experiencing issues, please read the "Known issues" section of the +# manual. +# +#oauth2_access_token = ACCESS_TOKEN +#oauth2_request_url = https://accounts.google.com/o/oauth2/token +#oauth2_refresh_token = REFRESH_TOKEN +# +# The returned values must be str. +#oauth2_access_token_eval = get_access_token("accountname") +#oauth2_refresh_token_eval = get_refresh_token("accountname") + +########## Passwords + +# There are six ways to specify the password for the IMAP server: +# +# 1. No password at all specified in the config file. +# If a matching entry is found in ~/.netrc (see netrc (5) for +# information) this password will be used. Do note that netrc only +# allows one entry per hostname. If there is no ~/.netrc file but +# there is an /etc/netrc file, the password will instead be taken +# from there. Otherwise you will be prompted for the password when +# Offlineimap starts when using a UI that supports this. +# +# 2. The remote password stored in this file with the remotepass +# option. Save this file with the UTF-8 encoding if your server expect UTF-8 +# encoded password. +# +# Any '%' needs to be encoded as '%%'. Example: +#remotepass = myp%%ssword # Real password is myp%ssword +# +# 3. The remote password stored as a single line in an external file, which is +# referenced by the remotefile option. Must be UTF-8 encoded. Example: +#remotepassfile = ~/Password.IMAP.Account1 +# +# 4. With a preauth tunnel. With this method, you invoke an external +# program that is guaranteed *NOT* to ask for a password, but rather +# to read from stdin and write to stdout an IMAP protocol stream that +# begins life in the PREAUTH state. When you use a tunnel, you do +# NOT specify a user or password (if you do, they'll be ignored.) +# Instead, you specify a preauthtunnel, as this example illustrates +# for Courier IMAP on Debian: +#preauthtunnel = ssh -q imaphost '/usr/bin/imapd ./Maildir' +# +# 5. If you are using Kerberos and have the Python gssapi package +# installed, you should not specify a remotepass. If the user has a +# valid Kerberos TGT, Offlineimap will figure out the rest all by +# itself, and fall back to password authentication if needed. +# +# 6. Using arbitrary python code. With this method, you invoke a +# function from your pythonfile. To use this method assign the name +# of the function to the variable 'remotepasseval'. Example: +#remotepasseval = get_password("imap.example.net") +# You can also query for the username: +#remoteusereval = get_username("imap.example.net") +# This method can be used to design more elaborate setups, e.g. by +# querying the gnome-keyring via its python bindings. + + +########## Advanced settings + + +# These options stands in the [Repository RemoteExample] section. +# +# Tunnels. There are two types: +# +# - preauth: they teleport your connection to the remote system +# and you don't need to authenticate yourself there; the sole +# fact that you succeeded to get the tunnel running is enough. +# This tunnel type was explained above in the 'Passwords' section. +# +# - transport: the just provide the transport (probably encrypted) +# to the IMAP server, but you still need to authenticate at the +# IMAP server. +# +# Tunnels are currently working only with IMAP servers and their +# derivatives (GMail currently). Additionally, for GMail accounts +# preauth tunnel settings are ignored: we don't believe that there +# are ways to preauthenticate at Google mail system IMAP servers. +# +# You must choose at most one tunnel type, be wise M'Lord! +# +#preauthtunnel = ssh -q imaphost '/usr/bin/imapd ./Maildir' +#transporttunnel = openssl s_client -host myimap -port 993 -quiet + + +# This option stands in the [Repository RemoteExample] section. +# +# Some IMAP servers need a "reference" which often refers to the "folder root". +# +# This is most commonly needed with UW IMAP, where you might need to specify the +# directory in which your mail is stored. The 'reference' value will be prefixed +# to all folder paths referring to that repository. E.g. accessing folder 'INBOX' +# with "reference = Mail" will try to access Mail/INBOX. +# +# The nametrans and folderfilter functions will apply to the full path, +# including the reference prefix. Most users will not need this. +# +#reference = Mail + + +# DEPRECATED: This option stands in the [Repository RemoteExample] section. +# +# IMAP defines an encoding for non-ASCII ("international") characters. Enable +# this option if you want to decode them to the nowadays ubiquitous UTF-8. +# +# Note that the IMAP 4rev1 specification (RFC 3501) allows both UTF-8 and +# modified UTF-7 folder names. +# +# This option converts IMAP folder names from IMAP4-UTF-7 to UTF-8. +# +# NOTE/LIMITATION: +# - The reencoding is applied *after* a nametrans function that may be given, +# so it is important to note that nametrans will work on the undecoded +# UTF-7 names. +# - This option only works from a remote IMAP to a local Maildir repository +# - It only works *once*, so it can only be used for one-off backups +# (see https://github.com/OfflineIMAP/offlineimap/issues/299 and especially +# https://github.com/OfflineIMAP/offlineimap/issues/299#issuecomment-331243827) +# +# WARNING: with this option enabled: +# - compatibility with any other version is NOT GUARANTED (including newer); +# - no support is provided. +# +# DEPRECATION: +# This option is only there for backward compatibility with existing set-ups. +# For newly created accounts please use the utf8foldernames option on account +# level. +# +# This feature was merged because it's small changes in the code. However, this +# might seriously decrease the stability of the program. That's why it will +# likely never be marked stable. The approach is: if it works for you, you're +# lucky and you might choose to go for it. If it doesn't, sorry but this feature +# is known to not work in many cases and it's not available to you. Enabling +# this feature might really be a poor choice for the future since it's not +# supported at all and new releases might break the setup. +# +#decodefoldernames = no + + +# This option stands in the [Repository RemoteExample] section. +# +# In between synchronisations, Offlineimap can monitor mailboxes for new +# messages using the IDLE command. If you want to enable this, specify here the +# folders you wish to monitor. IMAP protocol requires a separate connection for +# each folder monitored in this way, so setting this option will force settings +# for: +# +# - maxconnections: to be at least the number of folders you give +# - holdconnectionopen: to be true +# - keepalive: to be 29 minutes unless you specify otherwise +# - singlethreadperfolder: to be true +# +# The presynchook and postsynchook are executed for each new synchronisation per +# folder. +# +# This feature isn't complete and may well have problems. See the "Known Issues" +# entry in the manual for more details. +# +# This option should return a Python list. For example +# +#idlefolders = ['INBOX', 'INBOX.Alerts'] + + +# This option stands in the [Repository RemoteExample] section. +# +# Offlineimap can use a compressed connection to the IMAP server. +# This can result in faster downloads for some cases. +# +#usecompression = yes + + +# This option stands in the [Repository RemoteExample] section. +# +# Offlineimap can use multiple connections to the server in order +# to perform multiple synchronization actions simultaneously. +# This may place a higher burden on the server. In most cases, +# setting this value to 2 or 3 will speed up the sync, but in some +# cases, it may slow things down. The safe answer is 1. You should +# probably never set it to a value more than 5. +# +#maxconnections = 2 + + +# This option stands in the [Repository RemoteExample] section. +# +# If you want to ensure that only one single thread is used to synchronize each +# folder, set this to 'yes'. If this is set, only one thread will be used to +# copy messages for each folder, but up to maxconnections threads will be used +# overall, copying different folders in parallel. This option is required to +# download in UIDs order. +# +# If this is unset (the default), then up to maxconnections threads are used +# across all currently syncing folders. This option is sightly recommended in +# IMAP/IMAP mode (no maildir). +# +#singlethreadperfolder = no + + +# This option stands in the [Repository RemoteExample] section. +# +# Offlineimap normally closes IMAP server connections between refreshes if +# the global option autorefresh is specified. If you wish it to keep the +# connection open, set this to true. If not specified, the default is +# false. Keeping the connection open means a faster sync start the +# next time and may use fewer server resources on connection, but uses +# more server memory. This setting has no effect if autorefresh is not set. +# +#holdconnectionopen = no + + +# This option stands in the [Repository RemoteExample] section. +# +# If you want to have "keepalives" sent while waiting between syncs, specify the +# amount of time IN SECONDS between keepalives here. Note that sometimes more +# than this amount of time might pass, so don't make it tight. This setting has +# no effect if autorefresh and holdconnectionopen are not both set. +# +#keepalive = 60 + + +# This option stands in the [Repository RemoteExample] section. +# +# Normally, Offlineimap will expunge deleted messages from the server. You can +# disable that if you wish. This means that Offlineimap will mark them deleted +# on the server, but not actually delete them. You must use some other IMAP +# client to delete them if you use this setting; otherwise, the messages will +# just pile up there forever. Therefore, this setting is definitely NOT +# recommended for a long term. +# +# Default is yes. +# +#expunge = no + + +# This option stands in the [Repository RemoteExample] section. +# +# Specify whether to process all mail folders on the server, or only +# those listed as "subscribed". +# +# Default is no. +# +#subscribedonly = no + + +# This option stands in the [Repository RemoteExample] section. +# +# You can specify a folder translator. This must be a eval-able. +# +# Python expression that takes a foldername arg and returns the new value. A +# lambda function is suggested. +# +# WARNING: you MUST construct it so that it NEVER returns the same value for two +# folders, UNLESS the second values are filtered out by folderfilter below. +# Failure to follow this rule will result in undefined behavior. +# +# If you enable nametrans, you will likely need to set the reversed nametrans on +# the other side. See the user documentation for details and use cases. They +# are also online at: http://www.offlineimap.org/doc/nametrans.html +# +# This example below will remove "INBOX." from the leading edge of folders +# (great for Courier IMAP users). +# +#nametrans = lambda foldername: re.sub('^INBOX\.', '', foldername) +# +# Using Courier remotely and want to duplicate its mailbox naming locally? Try +# this: +# +#nametrans = lambda foldername: re.sub('^INBOX\.*', '.', foldername) + + +# This option stands in the [Repository RemoteExample] section. +# +# Determines if folderfilter will be invoked on each run (dynamic folder +# filtering) or filtering status will be determined at startup (default +# behaviour). +# +#dynamic_folderfilter = False + + +# This option stands in the [Repository RemoteExample] section. +# +# You can specify which folders to sync using the folderfilter setting. You can +# provide any python function (e.g. a lambda function) which will be invoked for +# each foldername. If the filter function returns True, the folder will be +# synced, if it returns False, it. +# +# The folderfilter operates on the *UNTRANSLATED* name (before any nametrans +# translation takes place). +# +# Example 1: synchronizing only INBOX and Sent. +# +#folderfilter = lambda foldername: foldername in ['INBOX', 'Sent'] +# +# Example 2: synchronizing everything except Trash. +# +#folderfilter = lambda foldername: foldername not in ['Trash'] +# +# Example 3: Using a regular expression to exclude Trash and all folders +# containing the characters "Del". +# +#folderfilter = lambda foldername: not re.search('(^Trash$|Del)', foldername) +# +# If folderfilter is not specified, ALL remote folders will be synchronized. +# +# You can span multiple lines by indenting the others. (Use backslashes at the +# end when required by Python syntax) For instance: +# +#folderfilter = lambda foldername: foldername in [ +# 'INBOX', 'Sent Mail', +# 'Deleted Items', 'Received'] + + +# This option stands in the [Repository RemoteExample] section. +# +# You can specify folderincludes to include additional folders. It should +# return a Python list. This might be used to include a folder that was +# excluded by your folderfilter rule, to include a folder that your server does +# not specify with its LIST option, or to include a folder that is outside your +# basic reference. +# +# The 'reference' value will not be prefixed to this folder name, even if you +# have specified one. For example: +# +#folderincludes = ['debian.user', 'debian.personal'] + + +# This option stands in the [Repository RemoteExample] section. +# +# If you do not want to have any folders created on this repository, +# set the createfolders variable to False, the default is True. Using +# this feature you can e.g. disable the propagation of new folders to +# the new repository. +# +#createfolders = True + + +# This option stands in the [Repository RemoteExample] section. +# +# Propagate deletions from remote to local. Messages deleted in this repository +# won't get deleted on the local repository if set to "no". Default is yes. +# +# See sync_deletes in the LocalExample section, too. +# +#sync_deletes = yes + + +# This option stands in the [Repository RemoteExample] section. +# +# 'foldersort' determines how folders are sorted. +# +# This affects order of synchronization and mbnames. The expression should +# return -1, 0, or 1, as the default Python cmp() does. The two arguments, x +# and y, are strings representing the names of the folders to be sorted. The +# sorting is applied *AFTER* nametrans, if any. The default is to sort IMAP +# folders alphabetically (case-insensitive). Usually, you should never have to +# modify this. To eg. reverse the sort: +# +#foldersort = lambda x, y: -cmp(x, y) + + +# This option stands in the [Repository RemoteExample] section. +# +# Enable 1-way synchronization. When setting 'readonly' to True, this +# repository will not be modified during synchronization. Usefull to +# e.g. backup an IMAP server. The readonly setting can be applied to any +# type of Repository (Maildir, Imap, etc). +# +# Notice that this does NOT mean that the local Maildir can be used with a +# read-only filesystem When OfflineImap uploads a new email, it is assigned a +# new UID by the remote which is stored in the filename. Otherwise, Offlineimap +# would have no way to map the UID to the file. +# +#readonly = False + + +# This option stands in the [Repository RemoteExample] section. +# +# You can specify a newmail hook to execute an external command upon receipt +# of new mail in the INBOX. +# +# The pythonfile must be set to import any required library. +# +# This example plays a sound file of your chosing when new mail arrives. +# +#newmail_hook = lambda: os.system( +#"cvlc --play-and-stop --play-and-exit /path/to/sound/file.mp3 > /dev/null 2>&1") + + +# This option stands in the [Repository RemoteExample] section. [TESTING] +# +# Operating under extreme network conditions (China) network connectivity +# especially for SSL can be so bad and so slow that absolutely every possible +# kind of connectivity error that can occur does occur. +# +# Rather than have offlineimap exit on errors it may be preferable to have it +# simply retry fetching of messages dozens of times. The alternative is to +# restart offlineimap in a constant loop, which may involve using significant +# CPU cycles (if the repository is large) to load up the UID database again. +# +# This option is best utilised in combination with socktimeout, which catches +# instances of interference by e.g. the GFW at the TCP layer, as well as China +# ISPs simply not coping. +# +# Default value: retrycount = 2 +# +#retrycount = 2 + + +# This option stands in the [Repository RemoteExample] section. +# +# If offlineimap is having troubles to download some UIDS, it's possible to get +# them ignored in a list. This only ignore the download. +# +# The function must return the list of UIDs (integers), None otherwise. It is +# passed the folder name (using the remote name with the remote separator, +# likely '/'). +# +#copy_ignore_eval = lambda foldername: {'INBOX': [2, 3, 4]}.get(foldername) + + +[Repository GmailExample] + +# A repository using Gmail's IMAP interface. +# +# Any configuration parameter of "IMAP" type repositories can be used here. +# Only "remoteuser" (or "remoteusereval" ) is mandatory. Default values for +# other parameters are OK, and you should not need fiddle with those. +# +# The Gmail repository provides default values for "remotehost", +# "remoteport", "tunnel" and "ssl". For the defaults we use, see: +# +# http://mail.google.com/support/bin/answer.py?answer=78799&topic=12814 +# +# This means ssl is enabled and must be configured correctly when connecting to +# Gmail. +# +# In addition we provide defaults for "oauth2_request_url", +# "trashfolder" and "spamfolder". +# +# All of the defaults we provide can be overriden. E.g. you can +# override "remotehost"/"remoteport"/"ssl" if you'd like to connect to +# imap.gmail.com via a local stunnel instead of directly. +# +# To enable GMail labels synchronisation, set the option "synclabels" in the +# corresponding "Account" section. +# +# Side note: Gmail will keep the deleted emails in "Gmail\All Mail" unless you +# defined it differently in your online settings. +# +type = Gmail + + +# This option stands in the [Repository GmailExample] section. +# +# Specify the Gmail user name. This is the only mandatory parameter. +# +remoteuser = username@gmail.com + + +# This option stands in the [Repository GmailExample] section. +# +# The trash folder name may be different from [Gmail]/Trash due to localization. +# You should look for the localized names of the spam folder too: "spamfolder" +# tunable will help you to override the standard name. +# +# For example on German Gmail, this setting should be: +# +#trashfolder = [Gmail]/Papierkorb diff --git a/mail/config b/mail/config new file mode 100644 index 0000000..da54040 --- /dev/null +++ b/mail/config @@ -0,0 +1,13 @@ +[accounts] +[[defalut]] +realname = Max Muster +address = m.m@gmx.ch +sendmail_command = msmtp -a [MSMTPNAME] -t +sent_box = maildir:///home/USER/mail/Sent +draft_box = maildir:///home/USER/mail/Drafts +[[[abook]]] +type = shellcommand +command = 'notmuch address --format=json date:3Y..' +regexp = '\[?{"name": "(?P.*)", "address": "(?P.+)", "name-addr": ".*"}[,\]]?' +shellcommand_external_filtering = False +ignorecase = True