# Noninteractive.Basic -- Noninteractive interface suitable for cronning
# Noninteractive.Quiet -- Noninteractive interface, generates no output
# except for errors.
+# Machine.MachineUI -- Interactive interface suitable for machine
+# parsing.
#
# You can override this with a command-line option -u.
# pythonfile = ~/.offlineimap.py
#
+# 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
+
+# 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 fsync = true.
+# Set fsync = false ot disable fsync.
+#
+# fsync = true
+
##################################################
# Mailbox name recorder
##################################################
# Note that this filter can be used only to further restrict mbnames
# to a subset of folders that pass the account's folderfilter.
+[ui.Curses.Blinkenlights]
+# Character used to indicate thread status.
+
+statuschar = .
+
##################################################
# Accounts
##################################################
# autorefresh = 5
+# You can tell offlineimap to do a number of quicker synchronizations
+# between full updates. A quick synchronization only synchronizes
+# if a Maildir folder has changed, or if an IMAP folder has received
+# new messages or had messages deleted. It does not update if the
+# only changes were to IMAP flags. Specify 0 to never do quick updates,
+# -1 to always do quick updates, or a positive integer to do that many
+# quick updates between each full synchronization (requires autorefresh).
+
+# quick = 10
+
[Repository LocalExample]
# This is one of the two repositories that you'll work with given the
[Repository RemoteExample]
-# And this is the remote repository. For now, we only support IMAP here.
+# And this is the remote repository. We only support IMAP or Gmail here.
type = IMAP
+# 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")
+# remoteusereval = getcredentials("filename", "hostname", "user")
+# remotepasseval = getcredentials("filename", "hostname", "passwd")
+
# Specify the remote hostname.
remotehost = examplehost
# Whether or not to use SSL.
ssl = yes
+# SSL Client certificate (optional)
+# sslclientcert = /path/to/file.crt
+
+# SSL Client key (optional)
+# sslclientkey = /path/to/file.key
+
# Specify the port. If not specified, use a default port.
# remoteport = 993
# Specify the remote user name.
remoteuser = username
-# There are four ways to specify the password for the remote IMAP
+# There are five ways to give the password for the remote IMAP
# server:
#
-# 1. No password at all specified in the config file. You will
-# be prompted for the password when OfflineIMAP starts.
+# 1. No password at all specified in the config file. If a matching
+# entry is found in ~/.netrc (see netrc (5) for information) the
+# password from the matching entry will be used. Otherwise you
+# will be prompted for the password when OfflineIMAP starts.
#
# 2. The remote password stored in this file with the remotepass
# option. Example:
#
# preauthtunnel = ssh -q imaphost '/usr/bin/imapd ./Maildir'
#
+# 5. If you are using Kerberos and have the Python Kerberos 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.
########## Advanced settings
#
# foldersort = lambda x, y: -cmp(x, y)
+
+[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 will use hard-coded values for `remotehost`,
+# `remoteport`, `tunnel` and `ssl`. (See
+# http://mail.google.com/support/bin/answer.py?answer=78799&topic=12814)
+# Any attempt to set those parameters will be silently ignored.
+#
+
+type = Gmail
+
+# Specify the Gmail user name. This is the only mandatory parameter.
+remoteuser = username@gmail.com
+
+# Deleting a message from a Gmail folder via the IMAP interface will
+# just remove that folder's label from the message: the message will
+# continue to exist in the '[Gmail]/All Mail' folder. If `realdelete`
+# is set to `True`, then deleted messages will really be deleted
+# during `offlineimap` sync, by moving them to the '[Gmail]/Trash'
+# folder. BEWARE: this will deleted a messages from *all folders* it
+# belongs to!
+#
+# See http://mail.google.com/support/bin/answer.py?answer=77657&topic=12815
+realdelete = no