Usage: imap2maildir [options]
A script to copy a remote IMAP folder to a local mail storage area. Ideal for incremental backups of mail from free webmail providers, or perhaps as an alternative to fetchmail. Supports mbox and maildir, despite the name. See COPYRIGHT for your rights; https://github.com/rtucker/imap2maildir/ for info.
Options: --version show program's version number and exit -h, --help show this help message and exit
Required options: -u USERNAME, --username=USERNAME Username for authentication to IMAP server -d PATH, --destination=PATH Where to store the mail, e.g. ~/Backups/Gmail
Optional and debugging options: -p PASSWORD, --password=PASSWORD Password for IMAP server. Default: prompt user -H HOSTNAME, --hostname=HOSTNAME Hostname of IMAP server, default: imap.gmail.com -P PORT, --port=PORT Port number. Default: 993 (SSL), 143 (clear) -v, --verbose Turns up the verbosity -q, --quiet Quiets all output (except prompts and errors) -r FOLDERNAME, --remote-folder=FOLDERNAME Remote IMAP folder. Default: [Gmail]/All Mail -s CRITERIA, --search=CRITERIA IMAP4 search criteria to use. Default: SEEN --create If --destination doesn't exist, create it -T, --no-turbo Check for message locally before asking IMAP. Default: True -m MAX, --max-messages=MAX How many messages to process in one run (0=infinite). Default: 0 -c CONFIGFILE, --config-file=CONFIGFILE Configuration file to use. Default: imap2maildir.conf -S, --ssl Use SSL to connect, default: True -t TYPE, --type=TYPE Mailbox type. Choice of: maildir, mbox. Default: maildir --mboxdash Use - in the mbox From line instead of sender's address. Default: False
COMMAND LINE EXAMPLES $ imap2maildir -u bob@yourplace.com -d /home/bob/backups/mail --create Prompts you for bob@yourplace.com's password, uses the default mail server. $ imap2maildir -c blarf.conf Uses the configuration from blarf.conf $ imap2maildir -c something.conf -m 5000 Uses the something.conf configuration, but overrides maxmessages to 5000.
COMMON ISSUES
Google Mail users in the United Kingdom receive the following: Exception: ['[NONEXISTENT] Unknown Mailbox: [Gmail]/All Mail (Failure)']
Workaround: Add --remote-folder="[Google Mail]/All Mail" Why: http://en.wikipedia.org/wiki/Gmail#Trademark_disputes
When a message is deleted from the server, it isn't deleted from imap2maildir's local store.
My response, to someone who asked about this: It's pretty much intentional. The original intent of the script was to automatically back up mail stored on a server, so it doesn't check for deleted messages -- if a message is missing from the server, an unattended delete of the local copy would be bad!
There are certainly scenarios where local deletes would be good. In
fact, yours is probably one of them. :-) At first glance, it would
involve iterating through all local messages and asking the server if
they exist, but there might be an easier way. (It's been awhile since
I've thought about IMAP.)
(Patches welcome. :-)
PROBLEMS/COMPLAINTS/SUGGESTIONS Please use the github issue tracker at: https://github.com/rtucker/imap2maildir/issues
MORE INFO You can download the latest pile of poop at: https://github.com/rtucker/imap2maildir/