/head: changeset 111
Updated documentation; absorbed readme into new manual
This commit is contained in:
parent
f4966e3a40
commit
ec4b5cde6f
@ -14,6 +14,7 @@
|
|||||||
# You should have received a copy of the GNU General Public License
|
# You should have received a copy of the GNU General Public License
|
||||||
# along with this program; if not, write to the Free Software
|
# along with this program; if not, write to the Free Software
|
||||||
# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
|
# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
|
||||||
|
SHELL=/bin/bash
|
||||||
|
|
||||||
clean:
|
clean:
|
||||||
-python2.2 setup.py clean --all
|
-python2.2 setup.py clean --all
|
||||||
@ -28,3 +29,9 @@ changelog:
|
|||||||
cvs2cl
|
cvs2cl
|
||||||
cvs commit ChangeLog
|
cvs commit ChangeLog
|
||||||
rm ChangeLog.bak
|
rm ChangeLog.bak
|
||||||
|
|
||||||
|
docs:
|
||||||
|
man -t -l offlineimap.1 > manual.ps
|
||||||
|
ps2pdf manual.ps
|
||||||
|
groff -Tascii -man offlineimap.1 | sed $$'s/.\b//g' > manual.txt
|
||||||
|
groff -Thtml -man offlineimap.1 > manual.html
|
||||||
|
298
head/README
298
head/README
@ -1,298 +0,0 @@
|
|||||||
OfflineIMAP
|
|
||||||
Copyright (C) 2002 John Goerzen <jgoerzen@complete.org>
|
|
||||||
This software comes with ABSOLUTELY NO WARRANTY; see the file
|
|
||||||
COPYING for details. This is free software, and you are welcome
|
|
||||||
to distribute it under the conditions laid out in COPYING.
|
|
||||||
|
|
||||||
gopher://quux.org/1/devel/offlineimap
|
|
||||||
http://quux.org/devel/offlineimap
|
|
||||||
|
|
||||||
==================================================
|
|
||||||
Welcome
|
|
||||||
==================================================
|
|
||||||
|
|
||||||
OfflineIMAP is a tool to simplify your e-mail reading. With
|
|
||||||
OfflimeIMAP, you can:
|
|
||||||
|
|
||||||
* Read the same mailbox from multiple computers, and have your
|
|
||||||
changes (deletions, etc.) be automatically reflected on
|
|
||||||
all computers
|
|
||||||
|
|
||||||
* Use various mail clients to read a single mail box
|
|
||||||
|
|
||||||
* Read mail while offline (on a laptop) and have all changes
|
|
||||||
synchronized when you get connected again
|
|
||||||
|
|
||||||
* Read IMAP mail with mail readers that do not support IMAP
|
|
||||||
|
|
||||||
* Use SSL (secure connections) to read IMAP mail even if your reader
|
|
||||||
doesn't support SSL
|
|
||||||
|
|
||||||
* Synchronize your mail using a completely safe and fault-tolerant
|
|
||||||
algorithm. (At least I think it is!)
|
|
||||||
|
|
||||||
* Customize which mailboxes to synchronize with regular expressions
|
|
||||||
or lists.
|
|
||||||
|
|
||||||
* Synchronize your mail two to four times faster than with other tools
|
|
||||||
or other mail readers' internal IMAP support.
|
|
||||||
|
|
||||||
In short, OfflineIMAP is a tool to let you read mail how YOU want to.
|
|
||||||
|
|
||||||
==================================================
|
|
||||||
Requirements
|
|
||||||
==================================================
|
|
||||||
|
|
||||||
To use OfflineIMAP, you must:
|
|
||||||
|
|
||||||
1. Have your mail delivered to a server that supports IMAP
|
|
||||||
|
|
||||||
2. Have Python 2.2 or above installed
|
|
||||||
|
|
||||||
3. Have a mail reader that supports Maildirs (most modern ones do)
|
|
||||||
|
|
||||||
These requirements are easy to meet, and most people will have met
|
|
||||||
them already without even being aware of it.
|
|
||||||
|
|
||||||
If you do not have Python already, check your operating system vendor
|
|
||||||
or download it from http://www.python.org/
|
|
||||||
|
|
||||||
==================================================
|
|
||||||
Installation
|
|
||||||
==================================================
|
|
||||||
|
|
||||||
Basic installation for a single user requires only these steps:
|
|
||||||
|
|
||||||
1. Copy offlineimap.conf to ~/.offlineimaprc and edit that file
|
|
||||||
for your accounts. Full instructions are in it.
|
|
||||||
|
|
||||||
2. Make the directory that you will store your folders in.
|
|
||||||
(~/Test in the example)
|
|
||||||
|
|
||||||
You can then just run "python2.2 offlineimap.py" to synchronize your
|
|
||||||
mail.
|
|
||||||
|
|
||||||
------------------------------
|
|
||||||
Systemwide
|
|
||||||
|
|
||||||
If you wish to install OfflineIMAP for all users on your system:
|
|
||||||
|
|
||||||
1. Either install the Debian package or run "python2.2 setup.py" and
|
|
||||||
follow the prompts
|
|
||||||
|
|
||||||
2. Advise users to perform steps 1 and 2 above
|
|
||||||
|
|
||||||
3. Run OfflineIMAP by typing "offlineimap"
|
|
||||||
|
|
||||||
That's it!
|
|
||||||
|
|
||||||
==================================================
|
|
||||||
Frequently Asked Questions
|
|
||||||
==================================================
|
|
||||||
|
|
||||||
Q. I get a message saying "UID validity problem for folder; skipping".
|
|
||||||
What does this mean and how do I fix it?
|
|
||||||
|
|
||||||
A. IMAP servers use a unique ID (UID) to refer to a specific message.
|
|
||||||
This number is guaranteed to be unique to a particular message
|
|
||||||
FOREVER. No other message in the same folder will ever get the same
|
|
||||||
UID. UIDs are an integral part of OfflineIMAP's synchronization
|
|
||||||
scheme; they are used to match up messages on your computer to
|
|
||||||
messages on the server.
|
|
||||||
|
|
||||||
Sometimes, the UIDs on the server might get reset. Usually this will
|
|
||||||
happen if you delete and then recreate a folder. When you create a
|
|
||||||
folder, the server will often start the UID back from 1. But
|
|
||||||
OfflineIMAP might still have the UIDs from the previous folder by the
|
|
||||||
same name stored. OfflineIMAP will detect this condition and skip the
|
|
||||||
folder. This is GOOD, because it prevents data loss.
|
|
||||||
|
|
||||||
You can fix it by removing your local folder and cache data. For
|
|
||||||
instance, if your folders are under ~/Folders and the folder with the
|
|
||||||
problem is INBOX, you'd type this:
|
|
||||||
|
|
||||||
rm -r ~/Folders/INBOX
|
|
||||||
rm ~/.offlineimap/AccountName/INBOX
|
|
||||||
|
|
||||||
(replacing AccountName with the account name as specified in
|
|
||||||
~/.offlineimaprc)
|
|
||||||
|
|
||||||
Next time you run OfflineIMAP, it will re-download the folder with the
|
|
||||||
new UIDs. Note that the procedure specified above will lose any local
|
|
||||||
changes made to the folder.
|
|
||||||
|
|
||||||
Some IMAP servers are broken and do not support UIDs properly. If you
|
|
||||||
continue to get this error for all your folders even after performing
|
|
||||||
the above procedure, it is likely that your IMAP server falls into
|
|
||||||
this category. OfflineIMAP is incompatible with such servers. Using
|
|
||||||
OfflineIMAP with them will not destroy any mail, but at the same time,
|
|
||||||
it will not actually synchronize it either. (OfflineIMAP will detect
|
|
||||||
this condition and abort prior to synchronization)
|
|
||||||
|
|
||||||
--------------------------------------------------
|
|
||||||
|
|
||||||
Q. What platforms does OfflineIMAP run on?
|
|
||||||
|
|
||||||
A. It should run on most platforms supported by Python, which are
|
|
||||||
quite a few.
|
|
||||||
|
|
||||||
--------------------------------------------------
|
|
||||||
|
|
||||||
Q. I'm using Mutt. Other IMAP synchronization programs require me to
|
|
||||||
"set maildir_trash=yes". Do I need to do that with OfflineIMAP?
|
|
||||||
|
|
||||||
A. No. OfflineIMAP is smart enough to figure out message deletion
|
|
||||||
without this extra crutch. You'll get the best results if you don't
|
|
||||||
use that setting, in fact.
|
|
||||||
|
|
||||||
--------------------------------------------------
|
|
||||||
|
|
||||||
Q. How do I specify the names of my folders?
|
|
||||||
|
|
||||||
A. You do not need to. OfflineIMAP is smart enough to automatically
|
|
||||||
figure out what folders are present on the IMAP server and synchronize
|
|
||||||
them.
|
|
||||||
|
|
||||||
--------------------------------------------------
|
|
||||||
|
|
||||||
Q. How can I prevent certain folders from being synced?
|
|
||||||
|
|
||||||
A. This feature will be introduced in a future version of OfflineIMAP.
|
|
||||||
|
|
||||||
--------------------------------------------------
|
|
||||||
|
|
||||||
Q. How can I add or delete a folder?
|
|
||||||
|
|
||||||
A. OfflineIMAP does not currently provide this feature.
|
|
||||||
|
|
||||||
--------------------------------------------------
|
|
||||||
|
|
||||||
Q. Are there any specific warnings or things I should be aware of
|
|
||||||
before using OfflineIMAP?
|
|
||||||
|
|
||||||
A. Yes. OfflineIMAP does a two-way synchronization. That is, if you
|
|
||||||
make a change to the mail on the server, it will be propogated to your
|
|
||||||
local copy, and vise-versa. Some people might think that it would be
|
|
||||||
wise to just delete all their local mail folders periodically. If you
|
|
||||||
do this with OfflineIMAP, remember to also remove your local status
|
|
||||||
cache (~/.offlineimap by default). Otherwise, OfflineIMAP will take
|
|
||||||
this as an intentional deletion of many messages and will interpret
|
|
||||||
your action as requesting them to be deleted from the server as well.
|
|
||||||
(If you don't understand this, don't worry; you probably won't
|
|
||||||
encounter this situation)
|
|
||||||
|
|
||||||
--------------------------------------------------
|
|
||||||
|
|
||||||
Q. What's thie Mailbox name recorder (mbnames) thing all about?
|
|
||||||
|
|
||||||
A. The Mutt mail reader is not capable of automatically determining
|
|
||||||
the names of your mailboxes. OfflineIMAP can help it (or many other)
|
|
||||||
programs out be writing these names out in a format you specify. See
|
|
||||||
the example offlineimap.conf file for details.
|
|
||||||
|
|
||||||
--------------------------------------------------
|
|
||||||
|
|
||||||
Q. Can I synchronize multiple accounts with OfflineIMAP?
|
|
||||||
|
|
||||||
A. Sure. Just name them all in the accounts line in the general
|
|
||||||
section of the config file, and add a per-account section for each one.
|
|
||||||
|
|
||||||
--------------------------------------------------
|
|
||||||
|
|
||||||
Q. Do you support POP?
|
|
||||||
|
|
||||||
A. No. POP is not robust enough to do a completely reliable
|
|
||||||
multi-machine synchronization like OfflineIMAP can do. OfflineIMAP
|
|
||||||
will not support it.
|
|
||||||
|
|
||||||
--------------------------------------------------
|
|
||||||
|
|
||||||
Q. Do you support mailbox formats other than Maildir?
|
|
||||||
|
|
||||||
A. Not at present. There is no technical reason not to; just no
|
|
||||||
demand yet. Maildir is a superior format anyway.
|
|
||||||
|
|
||||||
--------------------------------------------------
|
|
||||||
|
|
||||||
Q. [technical] Why are your Maildir message filenames so huge?
|
|
||||||
|
|
||||||
A. OfflineIMAP has two relevant principles: 1) never modifying your
|
|
||||||
messages in any way and 2) ensuring 100% reliable synchronizations.
|
|
||||||
In order to do a reliable sync, OfflineIMAP must have a way to
|
|
||||||
uniquely identify each e-mail. Three pieces of information are
|
|
||||||
required to do this: your account name, the folder name, and the
|
|
||||||
message UID. The account name can be calculated from the path in
|
|
||||||
which your messages are. The folder name can usually be as well, BUT
|
|
||||||
some mail clients move messages between folders by simply moving the
|
|
||||||
file, leaving the name intact.
|
|
||||||
|
|
||||||
So, OfflineIMAP must store both a UID folder ID. The folder ID is
|
|
||||||
necessary so OfflineIMAP can detect a message moved to a different
|
|
||||||
folder. OfflineIMAP stores the UID (U= number) and an md5sum of the
|
|
||||||
foldername (FMD5= number) to facilitate this.
|
|
||||||
|
|
||||||
--------------------------------------------------
|
|
||||||
|
|
||||||
Q. Can you provide an example of using OfflineIMAP with Mutt and
|
|
||||||
multiple accounts?
|
|
||||||
|
|
||||||
A. Sure. I set it up to have a single Mail directory with additional
|
|
||||||
directories under that for each account. So, mkdir ~/Mail. Then,
|
|
||||||
in your ~/.offlineimaprc:
|
|
||||||
|
|
||||||
Set "accounts = Personal, Work"
|
|
||||||
|
|
||||||
Make sure you have a [Personal] and a [Work] section, with different
|
|
||||||
pathnames. Enable [mbnames].
|
|
||||||
|
|
||||||
In each account section, do something like this:
|
|
||||||
|
|
||||||
localfolders = ~/Mail/Personal
|
|
||||||
|
|
||||||
or
|
|
||||||
|
|
||||||
localfolders = ~/Mail/Work
|
|
||||||
|
|
||||||
In Mutt:
|
|
||||||
|
|
||||||
add lines like this to your ~/.muttrc:
|
|
||||||
|
|
||||||
source ~/path-to-mbnames-muttrc-mailboxes
|
|
||||||
|
|
||||||
folder-hook Personal set from="youremail@personal.com"
|
|
||||||
folder-hook Work set from="youremail@work.com"
|
|
||||||
set mbox_type=Maildir
|
|
||||||
set folder=$HOME/Mail
|
|
||||||
set spoolfile=+Personal/INBOX
|
|
||||||
|
|
||||||
That's it!
|
|
||||||
|
|
||||||
--------------------------------------------------
|
|
||||||
|
|
||||||
Q. What about the speed of the sync?
|
|
||||||
|
|
||||||
A. OfflineIMAP 2.0 contains a multithreaded system. A good way to
|
|
||||||
experiment is by setting maxsyncaccounts to 3 and maxconnections to 3
|
|
||||||
in each account clause.
|
|
||||||
|
|
||||||
This lets OfflineIMAP open up multiple connections simultaneously.
|
|
||||||
That will let it process multiple folders and messages at once. In
|
|
||||||
most cases, this will increase performance of the sync.
|
|
||||||
|
|
||||||
Don't set the number too high. If you do that, things might actually
|
|
||||||
slow down as your link gets saturated. Also, too many connections can
|
|
||||||
cause mail servers to have excessive load. Administrators might take
|
|
||||||
unkindly to this, and the server might bog down. There are many
|
|
||||||
variables in the optimal setting; experimentation may help.
|
|
||||||
|
|
||||||
An informal benchmark yields these results for my setup:
|
|
||||||
|
|
||||||
OfflineIMAP 2.0 sync with multitreading: 9 seconds
|
|
||||||
OfflineIMAP 1.x sync w/o multithreading: 20 seconds
|
|
||||||
GNUS sync: 5 minutes
|
|
||||||
MacOS X Mail.app "manual cache" method: 10 minutes
|
|
||||||
|
|
||||||
OfflineIMAP's default configuration example does not have
|
|
||||||
multithreading enabled. You must configure it yourself to gain these
|
|
||||||
performance benefits. This decision was taken to provide a "works out
|
|
||||||
of the box" experience.
|
|
960
head/manual.html
Normal file
960
head/manual.html
Normal file
@ -0,0 +1,960 @@
|
|||||||
|
<html>
|
||||||
|
<head>
|
||||||
|
<meta name="generator" content="groff -Thtml, see www.gnu.org">
|
||||||
|
<meta name="Content-Style" content="text/css">
|
||||||
|
<title>OFFLINEIMAP</title>
|
||||||
|
</head>
|
||||||
|
<body>
|
||||||
|
|
||||||
|
<h1 align=center>OFFLINEIMAP</h1>
|
||||||
|
<a href="#NAME">NAME</a><br>
|
||||||
|
<a href="#SYNOPSIS">SYNOPSIS</a><br>
|
||||||
|
<a href="#DESCRIPTION">DESCRIPTION</a><br>
|
||||||
|
<a href="#INSTALLATION">INSTALLATION</a><br>
|
||||||
|
<a href="#CONFIGURATION">CONFIGURATION</a><br>
|
||||||
|
<a href="#OPTIONS">OPTIONS</a><br>
|
||||||
|
<a href="#EXAMPLES">EXAMPLES</a><br>
|
||||||
|
<a href="#ERRORS">ERRORS</a><br>
|
||||||
|
<a href="#OTHER FREQUENTLY ASKED QUESTIONS">OTHER FREQUENTLY ASKED QUESTIONS</a><br>
|
||||||
|
<a href="#CONFORMING TO">CONFORMING TO</a><br>
|
||||||
|
<a href="#NOTES">NOTES</a><br>
|
||||||
|
<a href="#BUGS">BUGS</a><br>
|
||||||
|
<a href="#COPYRIGHT">COPYRIGHT</a><br>
|
||||||
|
<a href="#AUTHOR">AUTHOR</a><br>
|
||||||
|
<a href="#SEE ALSO">SEE ALSO</a><br>
|
||||||
|
|
||||||
|
<hr>
|
||||||
|
<!-- Creator : groff version 1.17.2 -->
|
||||||
|
<!-- CreationDate: Thu Jul 11 15:42:24 2002 -->
|
||||||
|
<a name="NAME"></a>
|
||||||
|
<h2>NAME</h2>
|
||||||
|
<table width="100%" border=0 rules="none" frame="void"
|
||||||
|
cols="2" cellspacing="0" cellpadding="0">
|
||||||
|
<tr valign="top" align="left">
|
||||||
|
<td width="10%"></td><td width="90%">
|
||||||
|
OfflineIMAP - Powerful IMAP/Maildir synchronization and reader support</td></table>
|
||||||
|
<a name="SYNOPSIS"></a>
|
||||||
|
<h2>SYNOPSIS</h2>
|
||||||
|
|
||||||
|
<table width="100%" border=0 rules="none" frame="void"
|
||||||
|
cols="2" cellspacing="0" cellpadding="0">
|
||||||
|
<tr valign="top" align="left">
|
||||||
|
<td width="10%"></td><td width="90%">
|
||||||
|
<b>offlineimap</b> [ <b>-1</b> ] [ <b>-a</b>
|
||||||
|
<i>accountlist</i> ] [ <b>-c</b> <i>configfile</i> ]<br>
|
||||||
|
[ <b>-d</b> ] [ <b>-u</b> <i>interface</i> ]</td></table>
|
||||||
|
|
||||||
|
<table width="100%" border=0 rules="none" frame="void"
|
||||||
|
cols="2" cellspacing="0" cellpadding="0">
|
||||||
|
<tr valign="top" align="left">
|
||||||
|
<td width="10%"></td><td width="90%">
|
||||||
|
<b>offlineimap -h</b> | <b>--help</b></td></table>
|
||||||
|
<a name="DESCRIPTION"></a>
|
||||||
|
<h2>DESCRIPTION</h2>
|
||||||
|
|
||||||
|
<table width="100%" border=0 rules="none" frame="void"
|
||||||
|
cols="2" cellspacing="0" cellpadding="0">
|
||||||
|
<tr valign="top" align="left">
|
||||||
|
<td width="10%"></td><td width="90%">
|
||||||
|
<b>OfflineIMAP</b> is a tool to simplify your e-mail
|
||||||
|
reading. With <b>OfflineIMAP,</b> you can read the same
|
||||||
|
mailbox from multiple computers. You get a current copy of
|
||||||
|
your messages on each computer, and changes you make one
|
||||||
|
place will be visible on all other systems. For instance,
|
||||||
|
you can delete a message on your home computer, and it will
|
||||||
|
appear deleted on your work computer as well.
|
||||||
|
<b>OfflineIMAP</b> is also useful if you want to use a mail
|
||||||
|
reader that does not have IMAP support, has poor IMAP
|
||||||
|
support, or does not provide disconnected
|
||||||
|
operation.</td></table>
|
||||||
|
|
||||||
|
<table width="100%" border=0 rules="none" frame="void"
|
||||||
|
cols="2" cellspacing="0" cellpadding="0">
|
||||||
|
<tr valign="top" align="left">
|
||||||
|
<td width="10%"></td><td width="90%">
|
||||||
|
<b>OfflineIMAP</b> is <i>FAST;</i> it synchronizes my two
|
||||||
|
accounts with over 50 folders in 3 seconds. Other similar
|
||||||
|
tools might take over a minute, and achieve a less-reliable
|
||||||
|
result. Some mail readers can take over 10 minutes to do the
|
||||||
|
same thing, and some don't even support it at all. Unlike
|
||||||
|
other mail tools, <b>OfflineIMAP</b> features a
|
||||||
|
multi-threaded synchronization algorithm that can
|
||||||
|
dramatically speed up performance in many situations by
|
||||||
|
synchronizing several different things
|
||||||
|
simultaneously.</td></table>
|
||||||
|
|
||||||
|
<table width="100%" border=0 rules="none" frame="void"
|
||||||
|
cols="2" cellspacing="0" cellpadding="0">
|
||||||
|
<tr valign="top" align="left">
|
||||||
|
<td width="10%"></td><td width="90%">
|
||||||
|
<b>OfflineIMAP</b> is <i>FLEXIBLE;</i> you can customize
|
||||||
|
which folders are synced via regular expressions, lists, or
|
||||||
|
Python expressions; a versatile and comprehensive
|
||||||
|
configuration file is used to control behavior; two user
|
||||||
|
interfaces are built-in; fine-tuning of synchronization
|
||||||
|
performance is possible; internal or external automation is
|
||||||
|
supported; SSL and PREAUTH tunnels are both supported;
|
||||||
|
offline (or "unplugged") reading is supported; and
|
||||||
|
esoteric IMAP features are supported to ensure compatibility
|
||||||
|
with the widest variety of IMAP servers.</td></table>
|
||||||
|
|
||||||
|
<table width="100%" border=0 rules="none" frame="void"
|
||||||
|
cols="2" cellspacing="0" cellpadding="0">
|
||||||
|
<tr valign="top" align="left">
|
||||||
|
<td width="10%"></td><td width="90%">
|
||||||
|
<b>OfflineIMAP</b> is <i>SAFE;</i> it uses an algorithm
|
||||||
|
designed to prevent mail loss at all costs. Because of the
|
||||||
|
design of this algorithm, even programming errors should not
|
||||||
|
result in loss of mail. I am so confident in the algorithm
|
||||||
|
that I use my own personal and work accounts for testing of
|
||||||
|
<b>OfflineIMAP</b> pre-release, development, and beta
|
||||||
|
releases.</td></table>
|
||||||
|
|
||||||
|
<table width="100%" border=0 rules="none" frame="void"
|
||||||
|
cols="2" cellspacing="0" cellpadding="0">
|
||||||
|
<tr valign="top" align="left">
|
||||||
|
<td width="4%"></td><td width="96%">
|
||||||
|
<b>METHOD OF OPERATION</b></td></table>
|
||||||
|
|
||||||
|
<table width="100%" border=0 rules="none" frame="void"
|
||||||
|
cols="2" cellspacing="0" cellpadding="0">
|
||||||
|
<tr valign="top" align="left">
|
||||||
|
<td width="10%"></td><td width="90%">
|
||||||
|
<b>OfflineIMAP</b> operates by maintaining a hierarchy of
|
||||||
|
mail folders in Maildir format locally. Your own mail reader
|
||||||
|
will read mail from this tree, and need never know that the
|
||||||
|
mail comes from IMAP. <b>OfflineIMAP</b> will detect changes
|
||||||
|
to the mail folders on your IMAP server and your own
|
||||||
|
computer and bi-directionally synchronize them, copying,
|
||||||
|
marking, and deleting messages as necessary.</td></table>
|
||||||
|
<a name="INSTALLATION"></a>
|
||||||
|
<h2>INSTALLATION</h2>
|
||||||
|
|
||||||
|
<table width="100%" border=0 rules="none" frame="void"
|
||||||
|
cols="2" cellspacing="0" cellpadding="0">
|
||||||
|
<tr valign="top" align="left">
|
||||||
|
<td width="10%"></td><td width="90%">
|
||||||
|
If you are reading this document via the "man"
|
||||||
|
command, it is likely that you have no installation tasks to
|
||||||
|
perform; your system administrator has already installed it.
|
||||||
|
If you need to install it yourself, you have three options:
|
||||||
|
a system-wide installation with Debian, system-wide
|
||||||
|
installation with other systems, and a single-user
|
||||||
|
installation. You can download the latest version of
|
||||||
|
OfflineIMAP from
|
||||||
|
http://quux.org/devel/offlineimap/.</td></table>
|
||||||
|
|
||||||
|
<table width="100%" border=0 rules="none" frame="void"
|
||||||
|
cols="2" cellspacing="0" cellpadding="0">
|
||||||
|
<tr valign="top" align="left">
|
||||||
|
<td width="4%"></td><td width="96%">
|
||||||
|
<b>PREREQUISITES</b></td></table>
|
||||||
|
|
||||||
|
<table width="100%" border=0 rules="none" frame="void"
|
||||||
|
cols="2" cellspacing="0" cellpadding="0">
|
||||||
|
<tr valign="top" align="left">
|
||||||
|
<td width="10%"></td><td width="90%">
|
||||||
|
In order to use OfflineIMAP, you need to have these
|
||||||
|
conditions satisfied:</td></table>
|
||||||
|
|
||||||
|
<table width="100%" border=0 rules="none" frame="void"
|
||||||
|
cols="2" cellspacing="0" cellpadding="0">
|
||||||
|
<tr valign="top" align="left">
|
||||||
|
<td width="21%"></td><td width="79%">
|
||||||
|
Your mail server must support IMAP. Most Internet Service
|
||||||
|
Providers and corporate networks do, and most operating
|
||||||
|
systems have an IMAP implementation readily
|
||||||
|
available.</td></table>
|
||||||
|
|
||||||
|
<table width="100%" border=0 rules="none" frame="void"
|
||||||
|
cols="2" cellspacing="0" cellpadding="0">
|
||||||
|
<tr valign="top" align="left">
|
||||||
|
<td width="21%"></td><td width="79%">
|
||||||
|
You must have Python version 2.2.1 or above installed. If
|
||||||
|
you are running on Debian GNU/Linux, this requirement will
|
||||||
|
automatically be taken care of for you. If you do not have
|
||||||
|
Python already, check with your system administrator or
|
||||||
|
operating system vendor; or, download it from
|
||||||
|
http://www.python.org/. If you intend to use the Tk
|
||||||
|
interface, you must have Tkiner (python-tk) installed. If
|
||||||
|
you intend to use the SSL interface, your Python must have
|
||||||
|
been built with SSL support.</td></table>
|
||||||
|
|
||||||
|
<table width="100%" border=0 rules="none" frame="void"
|
||||||
|
cols="2" cellspacing="0" cellpadding="0">
|
||||||
|
<tr valign="top" align="left">
|
||||||
|
<td width="21%"></td><td width="79%">
|
||||||
|
Have a mail reader that supports the Maildir mailbox format.
|
||||||
|
Most modern mail readers have this support built-in, so you
|
||||||
|
can choose from a wide variety of mail servers. This format
|
||||||
|
is also known as the "qmail" format, so any mail
|
||||||
|
reader compatible with it will work with
|
||||||
|
OfflineIMAP.</td></table>
|
||||||
|
|
||||||
|
<table width="100%" border=0 rules="none" frame="void"
|
||||||
|
cols="2" cellspacing="0" cellpadding="0">
|
||||||
|
<tr valign="top" align="left">
|
||||||
|
<td width="4%"></td><td width="96%">
|
||||||
|
<b>DEBIAN SYSTEM-WIDE INSTALLATION</b></td></table>
|
||||||
|
|
||||||
|
<table width="100%" border=0 rules="none" frame="void"
|
||||||
|
cols="2" cellspacing="0" cellpadding="0">
|
||||||
|
<tr valign="top" align="left">
|
||||||
|
<td width="10%"></td><td width="90%">
|
||||||
|
If you are tracking Debian unstable, you may install
|
||||||
|
<b>OfflineIMAP</b> by simply running the following command
|
||||||
|
as root:</td></table>
|
||||||
|
|
||||||
|
<table width="100%" border=0 rules="none" frame="void"
|
||||||
|
cols="2" cellspacing="0" cellpadding="0">
|
||||||
|
<tr valign="top" align="left">
|
||||||
|
<td width="10%"></td><td width="90%">
|
||||||
|
<b>apt-get install offlineimap</b></td></table>
|
||||||
|
|
||||||
|
<table width="100%" border=0 rules="none" frame="void"
|
||||||
|
cols="2" cellspacing="0" cellpadding="0">
|
||||||
|
<tr valign="top" align="left">
|
||||||
|
<td width="10%"></td><td width="90%">
|
||||||
|
If you are not tracking Debian unstable, download the Debian
|
||||||
|
.deb package from the OfflineIMAP website and then run
|
||||||
|
<b>dpkg -i</b> to install the downloaded package. Then, go
|
||||||
|
to CONFIGURATION below. You will type <b>offlineimap</b> to
|
||||||
|
invoke the program.</td></table>
|
||||||
|
|
||||||
|
<table width="100%" border=0 rules="none" frame="void"
|
||||||
|
cols="2" cellspacing="0" cellpadding="0">
|
||||||
|
<tr valign="top" align="left">
|
||||||
|
<td width="4%"></td><td width="96%">
|
||||||
|
<b>OTHER SYSTEM-WIDE INSTALLATION</b></td></table>
|
||||||
|
|
||||||
|
<table width="100%" border=0 rules="none" frame="void"
|
||||||
|
cols="2" cellspacing="0" cellpadding="0">
|
||||||
|
<tr valign="top" align="left">
|
||||||
|
<td width="10%"></td><td width="90%">
|
||||||
|
Download the tar.gz version of the package from the website.
|
||||||
|
Then run these commands:</td></table>
|
||||||
|
|
||||||
|
<table width="100%" border=0 rules="none" frame="void"
|
||||||
|
cols="2" cellspacing="0" cellpadding="0">
|
||||||
|
<tr valign="top" align="left">
|
||||||
|
<td width="10%"></td><td width="90%">
|
||||||
|
<b>tar -zxvf offlineimap-x.y.z.tar.gz<br>
|
||||||
|
cd offlineimap-x.y.z<br>
|
||||||
|
python2.2 setup.py</b></td></table>
|
||||||
|
|
||||||
|
<table width="100%" border=0 rules="none" frame="void"
|
||||||
|
cols="2" cellspacing="0" cellpadding="0">
|
||||||
|
<tr valign="top" align="left">
|
||||||
|
<td width="10%"></td><td width="90%">
|
||||||
|
Some systems will need to use <b>python</b> instead of
|
||||||
|
<b>python2.2.</b> Next, proceed to configuration. You will
|
||||||
|
type <b>offlineimap</b> to invoke the program.</td></table>
|
||||||
|
|
||||||
|
<table width="100%" border=0 rules="none" frame="void"
|
||||||
|
cols="2" cellspacing="0" cellpadding="0">
|
||||||
|
<tr valign="top" align="left">
|
||||||
|
<td width="4%"></td><td width="96%">
|
||||||
|
<b>SINGLE-ACCOUNT INSTALLATION</b></td></table>
|
||||||
|
|
||||||
|
<table width="100%" border=0 rules="none" frame="void"
|
||||||
|
cols="2" cellspacing="0" cellpadding="0">
|
||||||
|
<tr valign="top" align="left">
|
||||||
|
<td width="10%"></td><td width="90%">
|
||||||
|
Download the tar.gz version of the package from the website.
|
||||||
|
Then run these commands:</td></table>
|
||||||
|
|
||||||
|
<table width="100%" border=0 rules="none" frame="void"
|
||||||
|
cols="2" cellspacing="0" cellpadding="0">
|
||||||
|
<tr valign="top" align="left">
|
||||||
|
<td width="10%"></td><td width="90%">
|
||||||
|
<b>tar -zxvf offlineimap-x.y.z.tar.gz<br>
|
||||||
|
cd offlineimap-x.y.z</b></td></table>
|
||||||
|
|
||||||
|
<table width="100%" border=0 rules="none" frame="void"
|
||||||
|
cols="2" cellspacing="0" cellpadding="0">
|
||||||
|
<tr valign="top" align="left">
|
||||||
|
<td width="10%"></td><td width="90%">
|
||||||
|
When you want to run <b>OfflineIMAP,</b> you will issue the
|
||||||
|
<b>cd</b> command as above and then type
|
||||||
|
<b>./offlineimap;</b> there is no installation step
|
||||||
|
necessary.</td></table>
|
||||||
|
<a name="CONFIGURATION"></a>
|
||||||
|
<h2>CONFIGURATION</h2>
|
||||||
|
|
||||||
|
<table width="100%" border=0 rules="none" frame="void"
|
||||||
|
cols="2" cellspacing="0" cellpadding="0">
|
||||||
|
<tr valign="top" align="left">
|
||||||
|
<td width="10%"></td><td width="90%">
|
||||||
|
<b>OfflineIMAP</b> is regulated by a configuration file that
|
||||||
|
is normally stored in <i>~/.offlineimaprc.</i>
|
||||||
|
<b>OfflineIMAP</b> ships with a file named
|
||||||
|
<i>offlineimap.conf</i> that you should copy to that
|
||||||
|
location and then edit. This file is vital to proper
|
||||||
|
operation of the system; it sets everything you need to run
|
||||||
|
<b>OfflineIMAP.</b> Full documentation for the configuration
|
||||||
|
file is included within the sample file.</td></table>
|
||||||
|
<a name="OPTIONS"></a>
|
||||||
|
<h2>OPTIONS</h2>
|
||||||
|
|
||||||
|
<table width="100%" border=0 rules="none" frame="void"
|
||||||
|
cols="2" cellspacing="0" cellpadding="0">
|
||||||
|
<tr valign="top" align="left">
|
||||||
|
<td width="10%"></td><td width="90%">
|
||||||
|
Most configuration is done via the configuration file.
|
||||||
|
Nevertheless, there are a few options that you may set for
|
||||||
|
<b>OfflineIMAP.</b></td></table>
|
||||||
|
|
||||||
|
<table width="100%" border=0 rules="none" frame="void"
|
||||||
|
cols="2" cellspacing="0" cellpadding="0">
|
||||||
|
<tr valign="top" align="left">
|
||||||
|
<td width="10%"></td><td width="90%">
|
||||||
|
<b>-1</b></td></table>
|
||||||
|
|
||||||
|
<table width="100%" border=0 rules="none" frame="void"
|
||||||
|
cols="2" cellspacing="0" cellpadding="0">
|
||||||
|
<tr valign="top" align="left">
|
||||||
|
<td width="21%"></td><td width="79%">
|
||||||
|
Disable all multithreading operations and use solely a
|
||||||
|
single-thread sync. This effectively sets the
|
||||||
|
<b>maxsyncaccounts</b> and all <b>maxconnections</b>
|
||||||
|
configuration file variables to 1.</td></table>
|
||||||
|
|
||||||
|
<table width="100%" border=0 rules="none" frame="void"
|
||||||
|
cols="2" cellspacing="0" cellpadding="0">
|
||||||
|
<tr valign="top" align="left">
|
||||||
|
<td width="10%"></td><td width="90%">
|
||||||
|
<b>-a</b> <i>accountlist</i></td></table>
|
||||||
|
|
||||||
|
<table width="100%" border=0 rules="none" frame="void"
|
||||||
|
cols="2" cellspacing="0" cellpadding="0">
|
||||||
|
<tr valign="top" align="left">
|
||||||
|
<td width="21%"></td><td width="79%">
|
||||||
|
Overrides the <b>accounts</b> section in the config file.
|
||||||
|
Lets you specify a particular account or set of accounts to
|
||||||
|
sync without having to edit the config file. You might use
|
||||||
|
this to exclude certain accounts, or to sync some accounts
|
||||||
|
that you normally prefer not to.</td></table>
|
||||||
|
|
||||||
|
<table width="100%" border=0 rules="none" frame="void"
|
||||||
|
cols="2" cellspacing="0" cellpadding="0">
|
||||||
|
<tr valign="top" align="left">
|
||||||
|
<td width="10%"></td><td width="90%">
|
||||||
|
<b>-c</b> <i>configfile</i></td></table>
|
||||||
|
|
||||||
|
<table width="100%" border=0 rules="none" frame="void"
|
||||||
|
cols="2" cellspacing="0" cellpadding="0">
|
||||||
|
<tr valign="top" align="left">
|
||||||
|
<td width="21%"></td><td width="79%">
|
||||||
|
Specifies a configuration file to use in lieu of the
|
||||||
|
default, <i>~/.offlineimaprc.</i></td></table>
|
||||||
|
|
||||||
|
<table width="100%" border=0 rules="none" frame="void"
|
||||||
|
cols="2" cellspacing="0" cellpadding="0">
|
||||||
|
<tr valign="top" align="left">
|
||||||
|
<td width="10%"></td><td width="90%">
|
||||||
|
<b>-d</b></td></table>
|
||||||
|
|
||||||
|
<table width="100%" border=0 rules="none" frame="void"
|
||||||
|
cols="2" cellspacing="0" cellpadding="0">
|
||||||
|
<tr valign="top" align="left">
|
||||||
|
<td width="21%"></td><td width="79%">
|
||||||
|
Enables IMAP protocol stream and parsing debugging. This is
|
||||||
|
useful if you are trying to track down a malfunction or
|
||||||
|
figure out what is going on under the hood. I suggest that
|
||||||
|
you use this with <b>-1</b> in order to make the results
|
||||||
|
more sensible. Note that this output will contain full IMAP
|
||||||
|
protocol in plain text, including passwords, so take care to
|
||||||
|
remove that from the debugging output before sending it to
|
||||||
|
anyone else.</td></table>
|
||||||
|
|
||||||
|
<table width="100%" border=0 rules="none" frame="void"
|
||||||
|
cols="2" cellspacing="0" cellpadding="0">
|
||||||
|
<tr valign="top" align="left">
|
||||||
|
<td width="10%"></td><td width="90%">
|
||||||
|
<b>-h, --help</b></td></table>
|
||||||
|
|
||||||
|
<table width="100%" border=0 rules="none" frame="void"
|
||||||
|
cols="2" cellspacing="0" cellpadding="0">
|
||||||
|
<tr valign="top" align="left">
|
||||||
|
<td width="21%"></td><td width="79%">
|
||||||
|
Show summary of options.</td></table>
|
||||||
|
|
||||||
|
<table width="100%" border=0 rules="none" frame="void"
|
||||||
|
cols="2" cellspacing="0" cellpadding="0">
|
||||||
|
<tr valign="top" align="left">
|
||||||
|
<td width="10%"></td><td width="90%">
|
||||||
|
<b>-u</b> <i>interface</i></td></table>
|
||||||
|
|
||||||
|
<table width="100%" border=0 rules="none" frame="void"
|
||||||
|
cols="2" cellspacing="0" cellpadding="0">
|
||||||
|
<tr valign="top" align="left">
|
||||||
|
<td width="21%"></td><td width="79%">
|
||||||
|
Specifies an alternative user interface module to use. This
|
||||||
|
overrides the default specified in the configuration file.
|
||||||
|
The UI specified with <b>-u</b> will be forced to be used,
|
||||||
|
even if its <b>isuable()</b> method states that it cannot
|
||||||
|
be. Use this option with care.</td></table>
|
||||||
|
<a name="EXAMPLES"></a>
|
||||||
|
<h2>EXAMPLES</h2>
|
||||||
|
|
||||||
|
<table width="100%" border=0 rules="none" frame="void"
|
||||||
|
cols="2" cellspacing="0" cellpadding="0">
|
||||||
|
<tr valign="top" align="left">
|
||||||
|
<td width="10%"></td><td width="90%">
|
||||||
|
Here is an example configuration for a particularly complex
|
||||||
|
situation; more examples will be added later.</td></table>
|
||||||
|
|
||||||
|
<table width="100%" border=0 rules="none" frame="void"
|
||||||
|
cols="2" cellspacing="0" cellpadding="0">
|
||||||
|
<tr valign="top" align="left">
|
||||||
|
<td width="4%"></td><td width="96%">
|
||||||
|
<b>MULTIPLE ACCOUNTS WITH MUTT</b></td></table>
|
||||||
|
|
||||||
|
<table width="100%" border=0 rules="none" frame="void"
|
||||||
|
cols="2" cellspacing="0" cellpadding="0">
|
||||||
|
<tr valign="top" align="left">
|
||||||
|
<td width="10%"></td><td width="90%">
|
||||||
|
This example shows you how to set up <b>OfflineIMAP</b> to
|
||||||
|
synchronize multiple accounts with the mutt mail
|
||||||
|
reader.</td></table>
|
||||||
|
|
||||||
|
<table width="100%" border=0 rules="none" frame="void"
|
||||||
|
cols="2" cellspacing="0" cellpadding="0">
|
||||||
|
<tr valign="top" align="left">
|
||||||
|
<td width="10%"></td><td width="90%">
|
||||||
|
Start by creating a directory to hold your folders:<b><br>
|
||||||
|
mkdir ~/Mail</b></td></table>
|
||||||
|
|
||||||
|
<table width="100%" border=0 rules="none" frame="void"
|
||||||
|
cols="2" cellspacing="0" cellpadding="0">
|
||||||
|
<tr valign="top" align="left">
|
||||||
|
<td width="10%"></td><td width="90%">
|
||||||
|
In your <i>~/.offlineimaprc,</i> specify this:<b><br>
|
||||||
|
accounts = Personal, Work</b></td></table>
|
||||||
|
|
||||||
|
<table width="100%" border=0 rules="none" frame="void"
|
||||||
|
cols="2" cellspacing="0" cellpadding="0">
|
||||||
|
<tr valign="top" align="left">
|
||||||
|
<td width="10%"></td><td width="90%">
|
||||||
|
Make sure that you have both a <b>[Personal]</b> and a
|
||||||
|
<b>[Work]</b> section, with different localfolder pathnames
|
||||||
|
and enable <b>[mbnames].</b></td></table>
|
||||||
|
|
||||||
|
<table width="100%" border=0 rules="none" frame="void"
|
||||||
|
cols="2" cellspacing="0" cellpadding="0">
|
||||||
|
<tr valign="top" align="left">
|
||||||
|
<td width="10%"></td><td width="90%">
|
||||||
|
In each account section, do something like this:<b><br>
|
||||||
|
localfolders = ~/Mail/Personal</b></td></table>
|
||||||
|
|
||||||
|
<table width="100%" border=0 rules="none" frame="void"
|
||||||
|
cols="2" cellspacing="0" cellpadding="0">
|
||||||
|
<tr valign="top" align="left">
|
||||||
|
<td width="10%"></td><td width="90%">
|
||||||
|
Add these lines to your <i>~/.muttrc:</i><b><br>
|
||||||
|
source ~/path-to-mbnames-muttrc-mailboxes<br>
|
||||||
|
folder-hook Personal set
|
||||||
|
from="youremail@personal.com"<br>
|
||||||
|
folder-hook Work set from="youremail@work.com"<br>
|
||||||
|
set mbox_type=Maildir<br>
|
||||||
|
set folder=$HOME/Mail<br>
|
||||||
|
set spoolfile=+Personal/INBOX</b></td></table>
|
||||||
|
|
||||||
|
<table width="100%" border=0 rules="none" frame="void"
|
||||||
|
cols="2" cellspacing="0" cellpadding="0">
|
||||||
|
<tr valign="top" align="left">
|
||||||
|
<td width="10%"></td><td width="90%">
|
||||||
|
That's it!</td></table>
|
||||||
|
<a name="ERRORS"></a>
|
||||||
|
<h2>ERRORS</h2>
|
||||||
|
|
||||||
|
<table width="100%" border=0 rules="none" frame="void"
|
||||||
|
cols="2" cellspacing="0" cellpadding="0">
|
||||||
|
<tr valign="top" align="left">
|
||||||
|
<td width="10%"></td><td width="90%">
|
||||||
|
If you get one of some frequently-encountered or confusing
|
||||||
|
errors, please check this section.</td></table>
|
||||||
|
|
||||||
|
<table width="100%" border=0 rules="none" frame="void"
|
||||||
|
cols="2" cellspacing="0" cellpadding="0">
|
||||||
|
<tr valign="top" align="left">
|
||||||
|
<td width="4%"></td><td width="96%">
|
||||||
|
<b>UID validity problem for folder</b></td></table>
|
||||||
|
|
||||||
|
<table width="100%" border=0 rules="none" frame="void"
|
||||||
|
cols="2" cellspacing="0" cellpadding="0">
|
||||||
|
<tr valign="top" align="left">
|
||||||
|
<td width="10%"></td><td width="90%">
|
||||||
|
IMAP servers use a unique ID (UID) to refer to a specific
|
||||||
|
message. This number is guaranteed to be unique to a
|
||||||
|
particular message FOREVER. No other message in the same
|
||||||
|
folder will ever get the same UID. UIDs are an integral part
|
||||||
|
of OfflineIMAP's synchronization scheme; they are used to
|
||||||
|
match up messages on your computer to messages on the
|
||||||
|
server.</td></table>
|
||||||
|
|
||||||
|
<table width="100%" border=0 rules="none" frame="void"
|
||||||
|
cols="2" cellspacing="0" cellpadding="0">
|
||||||
|
<tr valign="top" align="left">
|
||||||
|
<td width="10%"></td><td width="90%">
|
||||||
|
Sometimes, the UIDs on the server might get reset. Usually
|
||||||
|
this will happen if you delete and then recreate a folder.
|
||||||
|
When you create a folder, the server will often start the
|
||||||
|
UID back from 1. But <b>OfflineIMAP</b> might still have the
|
||||||
|
UIDs from the previous folder by the same name stored.
|
||||||
|
<b>OfflineIMAP</b> will detect this condition and skip the
|
||||||
|
folder. This is GOOD, because it prevents data
|
||||||
|
loss.</td></table>
|
||||||
|
|
||||||
|
<table width="100%" border=0 rules="none" frame="void"
|
||||||
|
cols="2" cellspacing="0" cellpadding="0">
|
||||||
|
<tr valign="top" align="left">
|
||||||
|
<td width="10%"></td><td width="90%">
|
||||||
|
You can fix it by removing your local folder and cache data.
|
||||||
|
For instance, if your folders are under <i>~/Folders</i> and
|
||||||
|
the folder with the problem is INBOX, you'd type
|
||||||
|
this:</td></table>
|
||||||
|
|
||||||
|
<table width="100%" border=0 rules="none" frame="void"
|
||||||
|
cols="2" cellspacing="0" cellpadding="0">
|
||||||
|
<tr valign="top" align="left">
|
||||||
|
<td width="10%"></td><td width="90%">
|
||||||
|
<b>rm -r ~/Folders/INBOX<br>
|
||||||
|
rm ~/.offlineimap/AccountName/INBOX</b></td></table>
|
||||||
|
|
||||||
|
<table width="100%" border=0 rules="none" frame="void"
|
||||||
|
cols="2" cellspacing="0" cellpadding="0">
|
||||||
|
<tr valign="top" align="left">
|
||||||
|
<td width="10%"></td><td width="90%">
|
||||||
|
(replacing AccountName with the account name as specified in
|
||||||
|
<i>~/.offlineimaprc)</i></td></table>
|
||||||
|
|
||||||
|
<table width="100%" border=0 rules="none" frame="void"
|
||||||
|
cols="2" cellspacing="0" cellpadding="0">
|
||||||
|
<tr valign="top" align="left">
|
||||||
|
<td width="10%"></td><td width="90%">
|
||||||
|
Next time you run <b>OfflineIMAP,</b> it will re-download
|
||||||
|
the folder with the new UIDs. Note that the procedure
|
||||||
|
specified above will lose any local changes made to the
|
||||||
|
folder.</td></table>
|
||||||
|
|
||||||
|
<table width="100%" border=0 rules="none" frame="void"
|
||||||
|
cols="2" cellspacing="0" cellpadding="0">
|
||||||
|
<tr valign="top" align="left">
|
||||||
|
<td width="10%"></td><td width="90%">
|
||||||
|
Some IMAP servers are broken and do not support UIDs
|
||||||
|
properly. If you continue to get this error for all your
|
||||||
|
folders even after performing the above procedure, it is
|
||||||
|
likely that your IMAP server falls into this category.
|
||||||
|
<b>OfflineIMAP</b> is incompatible with such servers. Using
|
||||||
|
<b>OfflineIMAP</b> with them will not destroy any mail, but
|
||||||
|
at the same time, it will not actually synchronize it
|
||||||
|
either. (OfflineIMAP will detect this condition and abort
|
||||||
|
prior to synchronization)</td></table>
|
||||||
|
<a name="OTHER FREQUENTLY ASKED QUESTIONS"></a>
|
||||||
|
<h2>OTHER FREQUENTLY ASKED QUESTIONS</h2>
|
||||||
|
|
||||||
|
<table width="100%" border=0 rules="none" frame="void"
|
||||||
|
cols="2" cellspacing="0" cellpadding="0">
|
||||||
|
<tr valign="top" align="left">
|
||||||
|
<td width="10%"></td><td width="90%">
|
||||||
|
There are some other FAQs that might not fit into another
|
||||||
|
section of this document, and they are enumerated
|
||||||
|
here.</td></table>
|
||||||
|
|
||||||
|
<table width="100%" border=0 rules="none" frame="void"
|
||||||
|
cols="2" cellspacing="0" cellpadding="0">
|
||||||
|
<tr valign="top" align="left">
|
||||||
|
<td width="10%"></td><td width="90%">
|
||||||
|
<b>What platforms does OfflineIMAP run on?</b></td></table>
|
||||||
|
|
||||||
|
<table width="100%" border=0 rules="none" frame="void"
|
||||||
|
cols="2" cellspacing="0" cellpadding="0">
|
||||||
|
<tr valign="top" align="left">
|
||||||
|
<td width="21%"></td><td width="79%">
|
||||||
|
It should run on most platforms supported by Python, which
|
||||||
|
are quite a few.</td></table>
|
||||||
|
|
||||||
|
<table width="100%" border=0 rules="none" frame="void"
|
||||||
|
cols="2" cellspacing="0" cellpadding="0">
|
||||||
|
<tr valign="top" align="left">
|
||||||
|
<td width="10%"></td><td width="90%">
|
||||||
|
<b>I'm using Mutt. Other IMAP sync programs require me to
|
||||||
|
use set maildir_trash=yes . Do I need to do that with
|
||||||
|
OfflineIMAP?</b></td></table>
|
||||||
|
|
||||||
|
<table width="100%" border=0 rules="none" frame="void"
|
||||||
|
cols="2" cellspacing="0" cellpadding="0">
|
||||||
|
<tr valign="top" align="left">
|
||||||
|
<td width="21%"></td><td width="79%">
|
||||||
|
No. <b>OfflineIMAP</b> is smart enough to figure out message
|
||||||
|
deletion without this extra crutch. You'll get the best
|
||||||
|
results if you don't use this setting, in fact.</td></table>
|
||||||
|
|
||||||
|
<table width="100%" border=0 rules="none" frame="void"
|
||||||
|
cols="2" cellspacing="0" cellpadding="0">
|
||||||
|
<tr valign="top" align="left">
|
||||||
|
<td width="10%"></td><td width="90%">
|
||||||
|
<b>How do I specify the names of my
|
||||||
|
folders?</b></td></table>
|
||||||
|
|
||||||
|
<table width="100%" border=0 rules="none" frame="void"
|
||||||
|
cols="2" cellspacing="0" cellpadding="0">
|
||||||
|
<tr valign="top" align="left">
|
||||||
|
<td width="21%"></td><td width="79%">
|
||||||
|
You do not need to. <b>OfflineIMAP</b> is smart enough to
|
||||||
|
automatically figure out what folders are present on the
|
||||||
|
IMAP server and synchronize them. You can use the
|
||||||
|
<b>folderfilter</b> and <b>foldertrans</b> configuration
|
||||||
|
file options to request certain folders and rename them as
|
||||||
|
they come in if you like.</td></table>
|
||||||
|
|
||||||
|
<table width="100%" border=0 rules="none" frame="void"
|
||||||
|
cols="2" cellspacing="0" cellpadding="0">
|
||||||
|
<tr valign="top" align="left">
|
||||||
|
<td width="10%"></td><td width="90%">
|
||||||
|
<b>How can I prevent certain folders from being
|
||||||
|
synced?</b></td></table>
|
||||||
|
|
||||||
|
<table width="100%" border=0 rules="none" frame="void"
|
||||||
|
cols="2" cellspacing="0" cellpadding="0">
|
||||||
|
<tr valign="top" align="left">
|
||||||
|
<td width="21%"></td><td width="79%">
|
||||||
|
Use the <b>folderfilter</b> option in the configuration
|
||||||
|
file.</td></table>
|
||||||
|
|
||||||
|
<table width="100%" border=0 rules="none" frame="void"
|
||||||
|
cols="2" cellspacing="0" cellpadding="0">
|
||||||
|
<tr valign="top" align="left">
|
||||||
|
<td width="10%"></td><td width="90%">
|
||||||
|
<b>How can I add or delete a folder?</b></td></table>
|
||||||
|
|
||||||
|
<table width="100%" border=0 rules="none" frame="void"
|
||||||
|
cols="2" cellspacing="0" cellpadding="0">
|
||||||
|
<tr valign="top" align="left">
|
||||||
|
<td width="21%"></td><td width="79%">
|
||||||
|
<b>OfflineIMAP</b> does not currently provide this feature,
|
||||||
|
but if you create a new folder on the IMAP server, it will
|
||||||
|
be created locally automatically.</td></table>
|
||||||
|
|
||||||
|
<table width="100%" border=0 rules="none" frame="void"
|
||||||
|
cols="2" cellspacing="0" cellpadding="0">
|
||||||
|
<tr valign="top" align="left">
|
||||||
|
<td width="10%"></td><td width="90%">
|
||||||
|
<b>Are there any other warnings that I should be aware
|
||||||
|
of?</b></td></table>
|
||||||
|
|
||||||
|
<table width="100%" border=0 rules="none" frame="void"
|
||||||
|
cols="2" cellspacing="0" cellpadding="0">
|
||||||
|
<tr valign="top" align="left">
|
||||||
|
<td width="21%"></td><td width="79%">
|
||||||
|
Yes; see the NOTES section below.</td></table>
|
||||||
|
|
||||||
|
<table width="100%" border=0 rules="none" frame="void"
|
||||||
|
cols="2" cellspacing="0" cellpadding="0">
|
||||||
|
<tr valign="top" align="left">
|
||||||
|
<td width="10%"></td><td width="90%">
|
||||||
|
<b>What is the mailbox name recorder (mbnames)
|
||||||
|
for?</b></td></table>
|
||||||
|
|
||||||
|
<table width="100%" border=0 rules="none" frame="void"
|
||||||
|
cols="2" cellspacing="0" cellpadding="0">
|
||||||
|
<tr valign="top" align="left">
|
||||||
|
<td width="21%"></td><td width="79%">
|
||||||
|
The Mutt mail reader is not capable of automatically
|
||||||
|
determining the names of your mailboxes. OfflineIMAP can
|
||||||
|
help it (or many other) programs out be writing these names
|
||||||
|
out in a format you specify. See the example
|
||||||
|
offlineimap.conf file for details.</td></table>
|
||||||
|
|
||||||
|
<table width="100%" border=0 rules="none" frame="void"
|
||||||
|
cols="2" cellspacing="0" cellpadding="0">
|
||||||
|
<tr valign="top" align="left">
|
||||||
|
<td width="10%"></td><td width="90%">
|
||||||
|
<b>Can I synchronize multiple accounts with
|
||||||
|
OfflineIMAP?</b></td></table>
|
||||||
|
|
||||||
|
<table width="100%" border=0 rules="none" frame="void"
|
||||||
|
cols="2" cellspacing="0" cellpadding="0">
|
||||||
|
<tr valign="top" align="left">
|
||||||
|
<td width="21%"></td><td width="79%">
|
||||||
|
Sure. Just name them all in the accounts line in the general
|
||||||
|
section of the config file, and add a per-account section
|
||||||
|
for each one.</td></table>
|
||||||
|
|
||||||
|
<table width="100%" border=0 rules="none" frame="void"
|
||||||
|
cols="2" cellspacing="0" cellpadding="0">
|
||||||
|
<tr valign="top" align="left">
|
||||||
|
<td width="10%"></td><td width="90%">
|
||||||
|
<b>Does OfflineIMAP support POP?</b></td></table>
|
||||||
|
|
||||||
|
<table width="100%" border=0 rules="none" frame="void"
|
||||||
|
cols="2" cellspacing="0" cellpadding="0">
|
||||||
|
<tr valign="top" align="left">
|
||||||
|
<td width="21%"></td><td width="79%">
|
||||||
|
No. POP is not robust enough to do a completely reliable
|
||||||
|
multi-machine synchronization like OfflineIMAP can do.
|
||||||
|
OfflineIMAP will not support it.</td></table>
|
||||||
|
|
||||||
|
<table width="100%" border=0 rules="none" frame="void"
|
||||||
|
cols="2" cellspacing="0" cellpadding="0">
|
||||||
|
<tr valign="top" align="left">
|
||||||
|
<td width="10%"></td><td width="90%">
|
||||||
|
<b>Do you support mailbox formats other than
|
||||||
|
Maildir?</b></td></table>
|
||||||
|
|
||||||
|
<table width="100%" border=0 rules="none" frame="void"
|
||||||
|
cols="2" cellspacing="0" cellpadding="0">
|
||||||
|
<tr valign="top" align="left">
|
||||||
|
<td width="21%"></td><td width="79%">
|
||||||
|
Not at present. There is no technical reason not to; just no
|
||||||
|
demand yet. Maildir is a superior format
|
||||||
|
anyway.</td></table>
|
||||||
|
|
||||||
|
<table width="100%" border=0 rules="none" frame="void"
|
||||||
|
cols="2" cellspacing="0" cellpadding="0">
|
||||||
|
<tr valign="top" align="left">
|
||||||
|
<td width="10%"></td><td width="90%">
|
||||||
|
<b>[technical] Why are your Maildir message filenames so
|
||||||
|
huge?</b></td></table>
|
||||||
|
|
||||||
|
<table width="100%" border=0 rules="none" frame="void"
|
||||||
|
cols="2" cellspacing="0" cellpadding="0">
|
||||||
|
<tr valign="top" align="left">
|
||||||
|
<td width="21%"></td><td width="79%">
|
||||||
|
<b>OfflineIMAP</b> has two relevant principles: 1) never
|
||||||
|
modifying your messages in any way and 2) ensuring 100%
|
||||||
|
reliable synchronizations. In order to do a reliable sync,
|
||||||
|
<b>OfflineIMAP</b> must have a way to uniquely identify each
|
||||||
|
e-mail. Three pieces of information are required to do this:
|
||||||
|
your account name, the folder name, and the message UID. The
|
||||||
|
account name can be calculated from the path in which your
|
||||||
|
messages are. The folder name can usually be as well, BUT
|
||||||
|
some mail clients move messages between folders by simply
|
||||||
|
moving the file, leaving the name intact.</td></table>
|
||||||
|
|
||||||
|
<table width="100%" border=0 rules="none" frame="void"
|
||||||
|
cols="2" cellspacing="0" cellpadding="0">
|
||||||
|
<tr valign="top" align="left">
|
||||||
|
<td width="21%"></td><td width="79%">
|
||||||
|
So, <b>OfflineIMAP</b> must store both a UID folder ID. The
|
||||||
|
folder ID is necessary so <b>OfflineIMAP</b> can detect a
|
||||||
|
message moved to a different folder. <b>OfflineIMAP</b>
|
||||||
|
stores the UID (U= number) and an md5sum of the foldername
|
||||||
|
(FMD5= number) to facilitate this.</td></table>
|
||||||
|
|
||||||
|
<table width="100%" border=0 rules="none" frame="void"
|
||||||
|
cols="2" cellspacing="0" cellpadding="0">
|
||||||
|
<tr valign="top" align="left">
|
||||||
|
<td width="10%"></td><td width="90%">
|
||||||
|
<b>What is the speed of OfflineIMAP's sync?</b></td></table>
|
||||||
|
|
||||||
|
<table width="100%" border=0 rules="none" frame="void"
|
||||||
|
cols="2" cellspacing="0" cellpadding="0">
|
||||||
|
<tr valign="top" align="left">
|
||||||
|
<td width="21%"></td><td width="79%">
|
||||||
|
<b>OfflineIMAP</b> versions 2.0 and above contain a
|
||||||
|
multithreaded system. A good way to experiment is by setting
|
||||||
|
maxsyncaccounts to 3 and maxconnections to 3 in each account
|
||||||
|
clause.</td></table>
|
||||||
|
|
||||||
|
<table width="100%" border=0 rules="none" frame="void"
|
||||||
|
cols="2" cellspacing="0" cellpadding="0">
|
||||||
|
<tr valign="top" align="left">
|
||||||
|
<td width="21%"></td><td width="79%">
|
||||||
|
This lets OfflineIMAP open up multiple connections
|
||||||
|
simultaneously. That will let it process multiple folders
|
||||||
|
and messages at once. In most cases, this will increase
|
||||||
|
performance of the sync.</td></table>
|
||||||
|
|
||||||
|
<table width="100%" border=0 rules="none" frame="void"
|
||||||
|
cols="2" cellspacing="0" cellpadding="0">
|
||||||
|
<tr valign="top" align="left">
|
||||||
|
<td width="21%"></td><td width="79%">
|
||||||
|
Don't set the number too high. If you do that, things might
|
||||||
|
actually slow down as your link gets saturated. Also, too
|
||||||
|
many connections can cause mail servers to have excessive
|
||||||
|
load. Administrators might take unkindly to this, and the
|
||||||
|
server might bog down. There are many variables in the
|
||||||
|
optimal setting; experimentation may help.</td></table>
|
||||||
|
|
||||||
|
<table width="100%" border=0 rules="none" frame="void"
|
||||||
|
cols="2" cellspacing="0" cellpadding="0">
|
||||||
|
<tr valign="top" align="left">
|
||||||
|
<td width="21%"></td><td width="79%">
|
||||||
|
An informal benchmark yields these results for my
|
||||||
|
setup:</td></table>
|
||||||
|
|
||||||
|
<table width="100%" border=0 rules="none" frame="void"
|
||||||
|
cols="2" cellspacing="0" cellpadding="0">
|
||||||
|
<tr valign="top" align="left">
|
||||||
|
<td width="21%"></td><td width="79%">
|
||||||
|
10 minutes with MacOS X Mail.app "manual
|
||||||
|
cache"<br>
|
||||||
|
5 minutes with GNUS agent sync<br>
|
||||||
|
20 seconds with OfflineIMAP 1.x<br>
|
||||||
|
9 seconds with OfflineIMAP 2.x<br>
|
||||||
|
3 seconds with OfflineIMAP 3.x "cold start"<br>
|
||||||
|
2 seconds with OfflineIMAP 3.x "held
|
||||||
|
connection"</td></table>
|
||||||
|
<a name="CONFORMING TO"></a>
|
||||||
|
<h2>CONFORMING TO</h2>
|
||||||
|
|
||||||
|
<table width="100%" border=0 rules="none" frame="void"
|
||||||
|
cols="2" cellspacing="0" cellpadding="0">
|
||||||
|
<tr valign="top" align="left">
|
||||||
|
<td width="21%"></td><td width="79%">
|
||||||
|
Internet Message Access Protocol version 4rev1 (IMAP 4rev1)
|
||||||
|
as specified in RFC2060</td></table>
|
||||||
|
|
||||||
|
<table width="100%" border=0 rules="none" frame="void"
|
||||||
|
cols="2" cellspacing="0" cellpadding="0">
|
||||||
|
<tr valign="top" align="left">
|
||||||
|
<td width="21%"></td><td width="79%">
|
||||||
|
Maildir as specified in
|
||||||
|
http://www.qmail.org/qmail-manual-html/man5/maildir.html and
|
||||||
|
http://cr.yp.to/proto/maildir.html.</td></table>
|
||||||
|
|
||||||
|
<table width="100%" border=0 rules="none" frame="void"
|
||||||
|
cols="2" cellspacing="0" cellpadding="0">
|
||||||
|
<tr valign="top" align="left">
|
||||||
|
<td width="21%"></td><td width="79%">
|
||||||
|
Standard Python 2.2.1 as implemented on POSIX-compliant
|
||||||
|
systems.</td></table>
|
||||||
|
<a name="NOTES"></a>
|
||||||
|
<h2>NOTES</h2>
|
||||||
|
|
||||||
|
<table width="100%" border=0 rules="none" frame="void"
|
||||||
|
cols="2" cellspacing="0" cellpadding="0">
|
||||||
|
<tr valign="top" align="left">
|
||||||
|
<td width="4%"></td><td width="96%">
|
||||||
|
<b>DELETING LOCAL FOLDERS</b></td></table>
|
||||||
|
|
||||||
|
<table width="100%" border=0 rules="none" frame="void"
|
||||||
|
cols="2" cellspacing="0" cellpadding="0">
|
||||||
|
<tr valign="top" align="left">
|
||||||
|
<td width="10%"></td><td width="90%">
|
||||||
|
<b>OfflineIMAP</b> does a two-way synchronization. That is,
|
||||||
|
if you make a change to the mail on the server, it will be
|
||||||
|
propogated to your local copy, and vise-versa. Some people
|
||||||
|
might think that it would be wise to just delete all their
|
||||||
|
local mail folders periodically. If you do this with
|
||||||
|
OfflineIMAP, remember to also remove your local status cache
|
||||||
|
(~/.offlineimap by default). Otherwise, OfflineIMAP will
|
||||||
|
take this as an intentional deletion of many messages and
|
||||||
|
will interpret your action as requesting them to be deleted
|
||||||
|
from the server as well. (If you don't understand this,
|
||||||
|
don't worry; you probably won't encounter this
|
||||||
|
situation)</td></table>
|
||||||
|
|
||||||
|
<table width="100%" border=0 rules="none" frame="void"
|
||||||
|
cols="2" cellspacing="0" cellpadding="0">
|
||||||
|
<tr valign="top" align="left">
|
||||||
|
<td width="4%"></td><td width="96%">
|
||||||
|
<b>MAILING LIST</b></td></table>
|
||||||
|
|
||||||
|
<table width="100%" border=0 rules="none" frame="void"
|
||||||
|
cols="2" cellspacing="0" cellpadding="0">
|
||||||
|
<tr valign="top" align="left">
|
||||||
|
<td width="10%"></td><td width="90%">
|
||||||
|
There is an OfflineIMAP mailing list available.</td></table>
|
||||||
|
|
||||||
|
<table width="100%" border=0 rules="none" frame="void"
|
||||||
|
cols="2" cellspacing="0" cellpadding="0">
|
||||||
|
<tr valign="top" align="left">
|
||||||
|
<td width="10%"></td><td width="90%">
|
||||||
|
To subscribe, send the text "Subscribe" in the
|
||||||
|
subject of a mail to offlineimap-request@complete.org. To
|
||||||
|
post, send the message to
|
||||||
|
offlineimap@complete.org.</td></table>
|
||||||
|
<a name="BUGS"></a>
|
||||||
|
<h2>BUGS</h2>
|
||||||
|
|
||||||
|
<table width="100%" border=0 rules="none" frame="void"
|
||||||
|
cols="2" cellspacing="0" cellpadding="0">
|
||||||
|
<tr valign="top" align="left">
|
||||||
|
<td width="10%"></td><td width="90%">
|
||||||
|
Should be reported to the author at the address specified
|
||||||
|
below.</td></table>
|
||||||
|
<a name="COPYRIGHT"></a>
|
||||||
|
<h2>COPYRIGHT</h2>
|
||||||
|
|
||||||
|
<table width="100%" border=0 rules="none" frame="void"
|
||||||
|
cols="2" cellspacing="0" cellpadding="0">
|
||||||
|
<tr valign="top" align="left">
|
||||||
|
<td width="10%"></td><td width="90%">
|
||||||
|
OfflineIMAP is Copyright (C) 2002 John Goerzen.</td></table>
|
||||||
|
|
||||||
|
<table width="100%" border=0 rules="none" frame="void"
|
||||||
|
cols="2" cellspacing="0" cellpadding="0">
|
||||||
|
<tr valign="top" align="left">
|
||||||
|
<td width="10%"></td><td width="90%">
|
||||||
|
This program is free software; you can redistribute it
|
||||||
|
and/or modify it under the terms of the GNU General Public
|
||||||
|
License as published by the Free Software Foundation; either
|
||||||
|
version 2 of the License, or (at your option) any later
|
||||||
|
version.</td></table>
|
||||||
|
|
||||||
|
<table width="100%" border=0 rules="none" frame="void"
|
||||||
|
cols="2" cellspacing="0" cellpadding="0">
|
||||||
|
<tr valign="top" align="left">
|
||||||
|
<td width="10%"></td><td width="90%">
|
||||||
|
This program is distributed in the hope that it will be
|
||||||
|
useful, but WITHOUT ANY WARRANTY; without even the implied
|
||||||
|
warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
|
||||||
|
PURPOSE. See the GNU General Public License for more
|
||||||
|
details.</td></table>
|
||||||
|
|
||||||
|
<table width="100%" border=0 rules="none" frame="void"
|
||||||
|
cols="2" cellspacing="0" cellpadding="0">
|
||||||
|
<tr valign="top" align="left">
|
||||||
|
<td width="10%"></td><td width="90%">
|
||||||
|
You should have received a copy of the GNU General Public
|
||||||
|
License along with this program; if not, write
|
||||||
|
to:</td></table>
|
||||||
|
|
||||||
|
<table width="100%" border=0 rules="none" frame="void"
|
||||||
|
cols="2" cellspacing="0" cellpadding="0">
|
||||||
|
<tr valign="top" align="left">
|
||||||
|
<td width="10%"></td><td width="90%">
|
||||||
|
Free Software Foundation, Inc.<br>
|
||||||
|
59 Temple Place<br>
|
||||||
|
Suite 330<br>
|
||||||
|
Boston, MA 02111-1307<br>
|
||||||
|
USA</td></table>
|
||||||
|
<a name="AUTHOR"></a>
|
||||||
|
<h2>AUTHOR</h2>
|
||||||
|
|
||||||
|
<table width="100%" border=0 rules="none" frame="void"
|
||||||
|
cols="2" cellspacing="0" cellpadding="0">
|
||||||
|
<tr valign="top" align="left">
|
||||||
|
<td width="10%"></td><td width="90%">
|
||||||
|
<b>OfflineIMAP,</b> its libraries, documentation, and all
|
||||||
|
included files, except where noted, was written by John
|
||||||
|
Goerzen <jgoerzen@complete.org> and copyright is held
|
||||||
|
as stated in the COPYRIGHT section.</td></table>
|
||||||
|
|
||||||
|
<table width="100%" border=0 rules="none" frame="void"
|
||||||
|
cols="2" cellspacing="0" cellpadding="0">
|
||||||
|
<tr valign="top" align="left">
|
||||||
|
<td width="10%"></td><td width="90%">
|
||||||
|
OfflineIMAP may be downloaded, and information found, from
|
||||||
|
its homepage via either Gopher or HTTP:</td></table>
|
||||||
|
|
||||||
|
<table width="100%" border=0 rules="none" frame="void"
|
||||||
|
cols="2" cellspacing="0" cellpadding="0">
|
||||||
|
<tr valign="top" align="left">
|
||||||
|
<td width="10%"></td><td width="90%">
|
||||||
|
gopher://quux.org/1/devel/offlineimap<br>
|
||||||
|
http://quux.org/devel/offlineimap</td></table>
|
||||||
|
<a name="SEE ALSO"></a>
|
||||||
|
<h2>SEE ALSO</h2>
|
||||||
|
|
||||||
|
<table width="100%" border=0 rules="none" frame="void"
|
||||||
|
cols="2" cellspacing="0" cellpadding="0">
|
||||||
|
<tr valign="top" align="left">
|
||||||
|
<td width="10%"></td><td width="90%">
|
||||||
|
<b>mutt</b>(1), <b>python</b>(1).</td></table>
|
||||||
|
<hr>
|
||||||
|
</body>
|
||||||
|
</html>
|
BIN
head/manual.pdf
Normal file
BIN
head/manual.pdf
Normal file
Binary file not shown.
704
head/manual.ps
Normal file
704
head/manual.ps
Normal file
@ -0,0 +1,704 @@
|
|||||||
|
%!PS-Adobe-3.0
|
||||||
|
%%Creator: groff version 1.17.2
|
||||||
|
%%CreationDate: Thu Jul 11 15:42:22 2002
|
||||||
|
%%DocumentNeededResources: font Times-Roman
|
||||||
|
%%+ font Times-Bold
|
||||||
|
%%+ font Times-Italic
|
||||||
|
%%DocumentSuppliedResources: procset grops 1.17 2
|
||||||
|
%%Pages: 6
|
||||||
|
%%PageOrder: Ascend
|
||||||
|
%%Orientation: Portrait
|
||||||
|
%%EndComments
|
||||||
|
%%BeginProlog
|
||||||
|
%%BeginResource: procset grops 1.17 2
|
||||||
|
/setpacking where{
|
||||||
|
pop
|
||||||
|
currentpacking
|
||||||
|
true setpacking
|
||||||
|
}if
|
||||||
|
/grops 120 dict dup begin
|
||||||
|
/SC 32 def
|
||||||
|
/A/show load def
|
||||||
|
/B{0 SC 3 -1 roll widthshow}bind def
|
||||||
|
/C{0 exch ashow}bind def
|
||||||
|
/D{0 exch 0 SC 5 2 roll awidthshow}bind def
|
||||||
|
/E{0 rmoveto show}bind def
|
||||||
|
/F{0 rmoveto 0 SC 3 -1 roll widthshow}bind def
|
||||||
|
/G{0 rmoveto 0 exch ashow}bind def
|
||||||
|
/H{0 rmoveto 0 exch 0 SC 5 2 roll awidthshow}bind def
|
||||||
|
/I{0 exch rmoveto show}bind def
|
||||||
|
/J{0 exch rmoveto 0 SC 3 -1 roll widthshow}bind def
|
||||||
|
/K{0 exch rmoveto 0 exch ashow}bind def
|
||||||
|
/L{0 exch rmoveto 0 exch 0 SC 5 2 roll awidthshow}bind def
|
||||||
|
/M{rmoveto show}bind def
|
||||||
|
/N{rmoveto 0 SC 3 -1 roll widthshow}bind def
|
||||||
|
/O{rmoveto 0 exch ashow}bind def
|
||||||
|
/P{rmoveto 0 exch 0 SC 5 2 roll awidthshow}bind def
|
||||||
|
/Q{moveto show}bind def
|
||||||
|
/R{moveto 0 SC 3 -1 roll widthshow}bind def
|
||||||
|
/S{moveto 0 exch ashow}bind def
|
||||||
|
/T{moveto 0 exch 0 SC 5 2 roll awidthshow}bind def
|
||||||
|
/SF{
|
||||||
|
findfont exch
|
||||||
|
[exch dup 0 exch 0 exch neg 0 0]makefont
|
||||||
|
dup setfont
|
||||||
|
[exch/setfont cvx]cvx bind def
|
||||||
|
}bind def
|
||||||
|
/MF{
|
||||||
|
findfont
|
||||||
|
[5 2 roll
|
||||||
|
0 3 1 roll
|
||||||
|
neg 0 0]makefont
|
||||||
|
dup setfont
|
||||||
|
[exch/setfont cvx]cvx bind def
|
||||||
|
}bind def
|
||||||
|
/level0 0 def
|
||||||
|
/RES 0 def
|
||||||
|
/PL 0 def
|
||||||
|
/LS 0 def
|
||||||
|
/MANUAL{
|
||||||
|
statusdict begin/manualfeed true store end
|
||||||
|
}bind def
|
||||||
|
/PLG{
|
||||||
|
gsave newpath clippath pathbbox grestore
|
||||||
|
exch pop add exch pop
|
||||||
|
}bind def
|
||||||
|
/BP{
|
||||||
|
/level0 save def
|
||||||
|
1 setlinecap
|
||||||
|
1 setlinejoin
|
||||||
|
72 RES div dup scale
|
||||||
|
LS{
|
||||||
|
90 rotate
|
||||||
|
}{
|
||||||
|
0 PL translate
|
||||||
|
}ifelse
|
||||||
|
1 -1 scale
|
||||||
|
}bind def
|
||||||
|
/EP{
|
||||||
|
level0 restore
|
||||||
|
showpage
|
||||||
|
}bind def
|
||||||
|
/DA{
|
||||||
|
newpath arcn stroke
|
||||||
|
}bind def
|
||||||
|
/SN{
|
||||||
|
transform
|
||||||
|
.25 sub exch .25 sub exch
|
||||||
|
round .25 add exch round .25 add exch
|
||||||
|
itransform
|
||||||
|
}bind def
|
||||||
|
/DL{
|
||||||
|
SN
|
||||||
|
moveto
|
||||||
|
SN
|
||||||
|
lineto stroke
|
||||||
|
}bind def
|
||||||
|
/DC{
|
||||||
|
newpath 0 360 arc closepath
|
||||||
|
}bind def
|
||||||
|
/TM matrix def
|
||||||
|
/DE{
|
||||||
|
TM currentmatrix pop
|
||||||
|
translate scale newpath 0 0 .5 0 360 arc closepath
|
||||||
|
TM setmatrix
|
||||||
|
}bind def
|
||||||
|
/RC/rcurveto load def
|
||||||
|
/RL/rlineto load def
|
||||||
|
/ST/stroke load def
|
||||||
|
/MT/moveto load def
|
||||||
|
/CL/closepath load def
|
||||||
|
/FL{
|
||||||
|
currentgray exch setgray fill setgray
|
||||||
|
}bind def
|
||||||
|
/BL/fill load def
|
||||||
|
/LW/setlinewidth load def
|
||||||
|
/RE{
|
||||||
|
findfont
|
||||||
|
dup maxlength 1 index/FontName known not{1 add}if dict begin
|
||||||
|
{
|
||||||
|
1 index/FID ne{def}{pop pop}ifelse
|
||||||
|
}forall
|
||||||
|
/Encoding exch def
|
||||||
|
dup/FontName exch def
|
||||||
|
currentdict end definefont pop
|
||||||
|
}bind def
|
||||||
|
/DEFS 0 def
|
||||||
|
/EBEGIN{
|
||||||
|
moveto
|
||||||
|
DEFS begin
|
||||||
|
}bind def
|
||||||
|
/EEND/end load def
|
||||||
|
/CNT 0 def
|
||||||
|
/level1 0 def
|
||||||
|
/PBEGIN{
|
||||||
|
/level1 save def
|
||||||
|
translate
|
||||||
|
div 3 1 roll div exch scale
|
||||||
|
neg exch neg exch translate
|
||||||
|
0 setgray
|
||||||
|
0 setlinecap
|
||||||
|
1 setlinewidth
|
||||||
|
0 setlinejoin
|
||||||
|
10 setmiterlimit
|
||||||
|
[]0 setdash
|
||||||
|
/setstrokeadjust where{
|
||||||
|
pop
|
||||||
|
false setstrokeadjust
|
||||||
|
}if
|
||||||
|
/setoverprint where{
|
||||||
|
pop
|
||||||
|
false setoverprint
|
||||||
|
}if
|
||||||
|
newpath
|
||||||
|
/CNT countdictstack def
|
||||||
|
userdict begin
|
||||||
|
/showpage{}def
|
||||||
|
}bind def
|
||||||
|
/PEND{
|
||||||
|
clear
|
||||||
|
countdictstack CNT sub{end}repeat
|
||||||
|
level1 restore
|
||||||
|
}bind def
|
||||||
|
end def
|
||||||
|
/setpacking where{
|
||||||
|
pop
|
||||||
|
setpacking
|
||||||
|
}if
|
||||||
|
%%EndResource
|
||||||
|
%%IncludeResource: font Times-Roman
|
||||||
|
%%IncludeResource: font Times-Bold
|
||||||
|
%%IncludeResource: font Times-Italic
|
||||||
|
grops begin/DEFS 1 dict def DEFS begin/u{.001 mul}bind def end/RES 72
|
||||||
|
def/PL 792 def/LS false def/ENC0[/asciicircum/asciitilde/Scaron/Zcaron
|
||||||
|
/scaron/zcaron/Ydieresis/trademark/quotesingle/.notdef/.notdef/.notdef
|
||||||
|
/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef
|
||||||
|
/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef
|
||||||
|
/.notdef/.notdef/space/exclam/quotedbl/numbersign/dollar/percent
|
||||||
|
/ampersand/quoteright/parenleft/parenright/asterisk/plus/comma/hyphen
|
||||||
|
/period/slash/zero/one/two/three/four/five/six/seven/eight/nine/colon
|
||||||
|
/semicolon/less/equal/greater/question/at/A/B/C/D/E/F/G/H/I/J/K/L/M/N/O
|
||||||
|
/P/Q/R/S/T/U/V/W/X/Y/Z/bracketleft/backslash/bracketright/circumflex
|
||||||
|
/underscore/quoteleft/a/b/c/d/e/f/g/h/i/j/k/l/m/n/o/p/q/r/s/t/u/v/w/x/y
|
||||||
|
/z/braceleft/bar/braceright/tilde/.notdef/quotesinglbase/guillemotleft
|
||||||
|
/guillemotright/bullet/florin/fraction/perthousand/dagger/daggerdbl
|
||||||
|
/endash/emdash/ff/fi/fl/ffi/ffl/dotlessi/dotlessj/grave/hungarumlaut
|
||||||
|
/dotaccent/breve/caron/ring/ogonek/quotedblleft/quotedblright/oe/lslash
|
||||||
|
/quotedblbase/OE/Lslash/.notdef/exclamdown/cent/sterling/currency/yen
|
||||||
|
/brokenbar/section/dieresis/copyright/ordfeminine/guilsinglleft
|
||||||
|
/logicalnot/minus/registered/macron/degree/plusminus/twosuperior
|
||||||
|
/threesuperior/acute/mu/paragraph/periodcentered/cedilla/onesuperior
|
||||||
|
/ordmasculine/guilsinglright/onequarter/onehalf/threequarters
|
||||||
|
/questiondown/Agrave/Aacute/Acircumflex/Atilde/Adieresis/Aring/AE
|
||||||
|
/Ccedilla/Egrave/Eacute/Ecircumflex/Edieresis/Igrave/Iacute/Icircumflex
|
||||||
|
/Idieresis/Eth/Ntilde/Ograve/Oacute/Ocircumflex/Otilde/Odieresis
|
||||||
|
/multiply/Oslash/Ugrave/Uacute/Ucircumflex/Udieresis/Yacute/Thorn
|
||||||
|
/germandbls/agrave/aacute/acircumflex/atilde/adieresis/aring/ae/ccedilla
|
||||||
|
/egrave/eacute/ecircumflex/edieresis/igrave/iacute/icircumflex/idieresis
|
||||||
|
/eth/ntilde/ograve/oacute/ocircumflex/otilde/odieresis/divide/oslash
|
||||||
|
/ugrave/uacute/ucircumflex/udieresis/yacute/thorn/ydieresis]def
|
||||||
|
/Times-Italic@0 ENC0/Times-Italic RE/Times-Bold@0 ENC0/Times-Bold RE
|
||||||
|
/Times-Roman@0 ENC0/Times-Roman RE
|
||||||
|
%%EndProlog
|
||||||
|
%%Page: 1 1
|
||||||
|
%%BeginPageSetup
|
||||||
|
BP
|
||||||
|
%%EndPageSetup
|
||||||
|
/F0 10/Times-Roman@0 SF 111.22(OFFLINEIMAP\(1\) Of)72 48 R
|
||||||
|
(\215ineIMAP manual)-.25 E(OFFLINEIMAP\(1\))113.72 E/F1 10.95
|
||||||
|
/Times-Bold@0 SF -.219(NA)72 84 S(ME).219 E F0(Of)108 96 Q
|
||||||
|
(\215ineIMAP \255 Po)-.25 E
|
||||||
|
(werful IMAP/Maildir synchronization and reader support)-.25 E F1
|
||||||
|
(SYNOPSIS)72 112.8 Q/F2 10/Times-Bold@0 SF(of\215ineimap)108 124.8 Q F0
|
||||||
|
([)2.5 E F2<ad31>2.5 E F0 2.5(][)2.5 G F2<ad61>A/F3 10/Times-Italic@0 SF
|
||||||
|
(accountlist)2.5 E F0 2.5(][)2.5 G F2<ad63>A F3(con\214g\214le)2.5 E F0
|
||||||
|
(])2.5 E([)108 136.8 Q F2<ad64>2.5 E F0 2.5(][)2.5 G F2<ad75>A F3
|
||||||
|
(interface)2.5 E F0(])2.5 E F2(of\215ineimap \255h)108 160.8 Q F0(|)2.5
|
||||||
|
E F2(\255\255help)2.5 E F1(DESCRIPTION)72 177.6 Q F2(Of\215ineIMAP)108
|
||||||
|
189.6 Q F0 .019(is a tool to simplify your e-mail reading.)2.519 F -.4
|
||||||
|
(Wi)5.019 G(th).4 E F2(Of\215ineIMAP)2.519 E(,)-.92 E F0 .018
|
||||||
|
(you can read the same mailbox)2.519 F 1.115(from multiple computers.)
|
||||||
|
108 201.6 R -1.1(Yo)6.115 G 3.615(ug)1.1 G 1.115(et a current cop)-3.615
|
||||||
|
F 3.616(yo)-.1 G 3.616(fy)-3.616 G 1.116(our messages on each computer)
|
||||||
|
-3.616 F 3.616(,a)-.4 G 1.116(nd changes you)-3.616 F(mak)108 213.6 Q
|
||||||
|
2.915(eo)-.1 G .414(ne place will be visible on all other systems.)
|
||||||
|
-2.915 F -.15(Fo)5.414 G 2.914(ri).15 G .414
|
||||||
|
(nstance, you can delete a message on your home)-2.914 F(computer)108
|
||||||
|
225.6 Q 3.5(,a)-.4 G 1(nd it will appear deleted on your w)-3.5 F 1
|
||||||
|
(ork computer as well.)-.1 F F2(Of\215ineIMAP)6 E F0 1
|
||||||
|
(is also useful if you)3.5 F -.1(wa)108 237.6 S .827
|
||||||
|
(nt to use a mail reader that does not ha).1 F 1.127 -.15(ve I)-.2 H
|
||||||
|
.827(MAP support, has poor IMAP support, or does not pro).15 F(vide)-.15
|
||||||
|
E(disconnected operation.)108 249.6 Q F2(Of\215ineIMAP)108 266.4 Q F0
|
||||||
|
(is)3.216 E F3 -1.15(FA)3.216 G(ST)1.15 E(;)-.65 E F0 .716
|
||||||
|
(it synchronizes my tw)3.216 F 3.216(oa)-.1 G .716(ccounts with o)-3.216
|
||||||
|
F -.15(ve)-.15 G 3.216(r5).15 G 3.216(0f)-3.216 G .717
|
||||||
|
(olders in 3 seconds.)-3.216 F .717(Other similar)5.717 F .26
|
||||||
|
(tools might tak)108 278.4 R 2.76(eo)-.1 G -.15(ve)-2.91 G 2.76(ram).15
|
||||||
|
G .26(inute, and achie)-2.76 F .56 -.15(ve a l)-.25 H .259
|
||||||
|
(ess-reliable result.).15 F .259(Some mail readers can tak)5.259 F 2.759
|
||||||
|
(eo)-.1 G -.15(ve)-2.909 G 2.759(r1).15 G 2.759(0m)-2.759 G(in-)-2.759 E
|
||||||
|
.157(utes to do the same thing, and some don')108 290.4 R 2.657(te)-.18
|
||||||
|
G -.15(ve)-2.907 G 2.657(ns).15 G .157(upport it at all.)-2.657 F(Unlik)
|
||||||
|
5.158 E 2.658(eo)-.1 G .158(ther mail tools,)-2.658 F F2(Of\215ineIMAP)
|
||||||
|
2.658 E F0(fea-)2.658 E .321(tures a multi-threaded synchronization alg\
|
||||||
|
orithm that can dramatically speed up performance in man)108 302.4 R
|
||||||
|
2.82(ys)-.15 G(itu-)-2.82 E(ations by synchronizing se)108 314.4 Q -.15
|
||||||
|
(ve)-.25 G(ral dif).15 E(ferent things simultaneously)-.25 E(.)-.65 E F2
|
||||||
|
(Of\215ineIMAP)108 331.2 Q F0(is)3.065 E F3(FLEXIBLE;)3.065 E F0 .566
|
||||||
|
(you can customize which folders are synced via re)3.065 F .566(gular e)
|
||||||
|
-.15 F .566(xpressions, lists, or)-.15 F .734(Python e)108 343.2 R .734
|
||||||
|
(xpressions; a v)-.15 F .734(ersatile and comprehensi)-.15 F 1.034 -.15
|
||||||
|
(ve c)-.25 H .733(on\214guration \214le is used to control beha).15 F
|
||||||
|
.733(vior; tw)-.2 F 3.233(ou)-.1 G(ser)-3.233 E(interf)108 355.2 Q .535
|
||||||
|
(aces are b)-.1 F .535(uilt-in; \214ne-tuning of synchronization perfor\
|
||||||
|
mance is possible; internal or e)-.2 F .535(xternal automa-)-.15 F .441
|
||||||
|
(tion is supported; SSL and PREA)108 367.2 R .441
|
||||||
|
(UTH tunnels are both supported; of)-.55 F .44
|
||||||
|
(\215ine \(or "unplugged"\) reading is sup-)-.25 F .543(ported; and eso\
|
||||||
|
teric IMAP features are supported to ensure compatibility with the wide\
|
||||||
|
st v)108 379.2 R .544(ariety of IMAP)-.25 F(serv)108 391.2 Q(ers.)-.15 E
|
||||||
|
F2(Of\215ineIMAP)108 408 Q F0(is)4.065 E F3(SAFE;)4.065 E F0 1.565
|
||||||
|
(it uses an algorithm designed to pre)4.065 F -.15(ve)-.25 G 1.565
|
||||||
|
(nt mail loss at all costs.).15 F 1.564(Because of the)6.564 F .01
|
||||||
|
(design of this algorithm, e)108 420 R -.15(ve)-.25 G 2.51(np).15 G .01
|
||||||
|
(rogramming errors should not result in loss of mail.)-2.51 F 2.511(Ia)
|
||||||
|
5.011 G 2.511(ms)-2.511 G 2.511(oc)-2.511 G .011(on\214dent in the)
|
||||||
|
-2.511 F .448(algorithm that I use my o)108 432 R .448
|
||||||
|
(wn personal and w)-.25 F .448(ork accounts for testing of)-.1 F F2
|
||||||
|
(Of\215ineIMAP)2.948 E F0 .448(pre-release, de)2.948 F -.15(ve)-.25 G
|
||||||
|
(lop-).15 E(ment, and beta releases.)108 444 Q F2(METHOD OF OPERA)87
|
||||||
|
460.8 Q(TION)-.95 E(Of\215ineIMAP)108 472.8 Q F0 .07
|
||||||
|
(operates by maintaining a hierarch)2.57 F 2.57(yo)-.05 G 2.57(fm)-2.57
|
||||||
|
G .07(ail folders in Maildir format locally)-2.57 F 5.07(.Y)-.65 G .07
|
||||||
|
(our o)-6.17 F .07(wn mail)-.25 F .618
|
||||||
|
(reader will read mail from this tree, and need ne)108 484.8 R -.15(ve)
|
||||||
|
-.25 G 3.118(rk).15 G(no)-3.118 E 3.118(wt)-.25 G .617
|
||||||
|
(hat the mail comes from IMAP)-3.118 F(.)-1.11 E F2(Of\215ineIMAP)5.617
|
||||||
|
E F0 .849(will detect changes to the mail folders on your IMAP serv)108
|
||||||
|
496.8 R .849(er and your o)-.15 F .849(wn computer and bi-directionally)
|
||||||
|
-.25 F(synchronize them, cop)108 508.8 Q
|
||||||
|
(ying, marking, and deleting messages as necessary)-.1 E(.)-.65 E F1
|
||||||
|
(INST)72 525.6 Q(ALLA)-.986 E(TION)-1.04 E F0 .491
|
||||||
|
(If you are reading this document via the "man" command, it is lik)108
|
||||||
|
537.6 R .49(ely that you ha)-.1 F .79 -.15(ve n)-.2 H 2.99(oi).15 G .49
|
||||||
|
(nstallation tasks to)-2.99 F .043
|
||||||
|
(perform; your system administrator has already installed it.)108 549.6
|
||||||
|
R .044(If you need to install it yourself, you ha)5.043 F .344 -.15
|
||||||
|
(ve t)-.2 H(hree).15 E .39(options: a system-wide installation with Deb\
|
||||||
|
ian, system-wide installation with other systems, and a single-)108
|
||||||
|
561.6 R 12.823(user installation.)108 573.6 R -1.1(Yo)17.823 G 15.323
|
||||||
|
(uc)1.1 G 12.823(an do)-15.323 F 12.823(wnload the latest v)-.25 F
|
||||||
|
12.823(ersion of Of)-.15 F 12.823(\215ineIMAP from)-.25 F
|
||||||
|
(http://quux.or)108 585.6 Q(g/de)-.18 E -.15(ve)-.25 G(l/of).15 E
|
||||||
|
(\215ineimap/.)-.25 E F2(PREREQ)87 602.4 Q(UISITES)-.1 E F0
|
||||||
|
(In order to use Of)108 614.4 Q(\215ineIMAP)-.25 E 2.5(,y)-1.11 G
|
||||||
|
(ou need to ha)-2.5 E .3 -.15(ve t)-.2 H(hese conditions satis\214ed:)
|
||||||
|
.15 E 32.5<8359>108 631.2 S .197(our mail serv)-33.6 F .197
|
||||||
|
(er must support IMAP)-.15 F 5.197(.M)-1.11 G .197
|
||||||
|
(ost Internet Service Pro)-5.197 F .197(viders and corporate netw)-.15 F
|
||||||
|
.196(orks do,)-.1 F(and most operating systems ha)144 643.2 Q .3 -.15
|
||||||
|
(ve a)-.2 H 2.5(nI).15 G(MAP implementation readily a)-2.5 E -.25(va)-.2
|
||||||
|
G(ilable.).25 E 32.5<8359>108 660 S .085(ou must ha)-33.6 F .385 -.15
|
||||||
|
(ve P)-.2 H .085(ython v).15 F .085(ersion 2.2.1 or abo)-.15 F .385 -.15
|
||||||
|
(ve i)-.15 H 2.585(nstalled. If).15 F .086
|
||||||
|
(you are running on Debian GNU/Linux,)2.585 F .813
|
||||||
|
(this requirement will automatically be tak)144 672 R .813
|
||||||
|
(en care of for you.)-.1 F .812(If you do not ha)5.812 F 1.112 -.15
|
||||||
|
(ve P)-.2 H .812(ython already).15 F(,)-.65 E 3.88
|
||||||
|
(check with your system administrator or operating system v)144 684 R
|
||||||
|
3.88(endor; or)-.15 F 6.38(,d)-.4 G -.25(ow)-6.38 G 3.88(nload it from)
|
||||||
|
.25 F(http://www)144 696 Q(.p)-.65 E(ython.or)-.1 E 3.378(g/. If)-.18 F
|
||||||
|
.878(you intend to use the Tk interf)3.378 F .877(ace, you must ha)-.1 F
|
||||||
|
1.177 -.15(ve T)-.2 H .877(kiner \(p).15 F(ython-tk\))-.1 E 2.859
|
||||||
|
(installed. If)144 708 R .359(you intend to use the SSL interf)2.859 F
|
||||||
|
.359(ace, your Python must ha)-.1 F .66 -.15(ve b)-.2 H .36(een b).15 F
|
||||||
|
.36(uilt with SSL sup-)-.2 F(port.)144 720 Q(John Goerzen)72 768 Q
|
||||||
|
(July 11, 2002)151.655 E(1)201.915 E EP
|
||||||
|
%%Page: 2 2
|
||||||
|
%%BeginPageSetup
|
||||||
|
BP
|
||||||
|
%%EndPageSetup
|
||||||
|
/F0 10/Times-Roman@0 SF 111.22(OFFLINEIMAP\(1\) Of)72 48 R
|
||||||
|
(\215ineIMAP manual)-.25 E(OFFLINEIMAP\(1\))113.72 E 32.5<8348>108 84 S
|
||||||
|
-2.25 -.2(av e)-32.5 H 2.784(am)2.984 G .284
|
||||||
|
(ail reader that supports the Maildir mailbox format.)-2.784 F .284
|
||||||
|
(Most modern mail readers ha)5.284 F .584 -.15(ve t)-.2 H(his).15 E .111
|
||||||
|
(support b)144 96 R .112(uilt-in, so you can choose from a wide v)-.2 F
|
||||||
|
.112(ariety of mail serv)-.25 F 2.612(ers. This)-.15 F .112
|
||||||
|
(format is also kno)2.612 F(wn)-.25 E(as the "qmail" format, so an)144
|
||||||
|
108 Q 2.5(ym)-.15 G(ail reader compatible with it will w)-2.5 E
|
||||||
|
(ork with Of)-.1 E(\215ineIMAP)-.25 E(.)-1.11 E/F1 10/Times-Bold@0 SF
|
||||||
|
(DEBIAN SYSTEM-WIDE INST)87 124.8 Q(ALLA)-.9 E(TION)-.95 E F0 .708
|
||||||
|
(If you are tracking Debian unstable, you may install)108 136.8 R F1
|
||||||
|
(Of\215ineIMAP)3.208 E F0 .708(by simply running the follo)3.208 F .708
|
||||||
|
(wing com-)-.25 F(mand as root:)108 148.8 Q F1
|
||||||
|
(apt-get install of\215ineimap)108 165.6 Q F0 .339
|
||||||
|
(If you are not tracking Debian unstable, do)108 182.4 R .34
|
||||||
|
(wnload the Debian .deb package from the Of)-.25 F .34
|
||||||
|
(\215ineIMAP website)-.25 F .39(and then run)108 194.4 R F1 .39(dpkg -i)
|
||||||
|
2.89 F F0 .389(to install the do)2.89 F .389(wnloaded package.)-.25 F
|
||||||
|
.389(Then, go to CONFIGURA)5.389 F .389(TION belo)-1.11 F 4.189 -.65
|
||||||
|
(w. Y)-.25 H .389(ou will)-.45 F(type)108 206.4 Q F1(of\215ineimap)2.5 E
|
||||||
|
F0(to in)2.5 E -.2(vo)-.4 G .2 -.1(ke t).2 H(he program.).1 E F1 -.4(OT)
|
||||||
|
87 223.2 S(HER SYSTEM-WIDE INST).4 E(ALLA)-.9 E(TION)-.95 E F0(Do)108
|
||||||
|
235.2 Q(wnload the tar)-.25 E(.gz v)-.55 E
|
||||||
|
(ersion of the package from the website.)-.15 E
|
||||||
|
(Then run these commands:)5 E F1(tar -zxvf of\215ineimap-x.y)108 252 Q
|
||||||
|
(.z.tar)-.7 E(.gz)-1 E(cd of\215ineimap-x.y)108 264 Q(.z)-.7 E
|
||||||
|
(python2.2 setup.py)108 276 Q F0 1.272(Some systems will need to use)108
|
||||||
|
292.8 R F1(python)3.773 E F0 1.273(instead of)3.773 F F1(python2.2.)
|
||||||
|
3.773 E F0(Ne)6.273 E 1.273(xt, proceed to con\214guration.)-.15 F -1.1
|
||||||
|
(Yo)6.273 G 3.773(uw)1.1 G(ill)-3.773 E(type)108 304.8 Q F1
|
||||||
|
(of\215ineimap)2.5 E F0(to in)2.5 E -.2(vo)-.4 G .2 -.1(ke t).2 H
|
||||||
|
(he program.).1 E F1(SINGLE-A)87 321.6 Q(CCOUNT INST)-.55 E(ALLA)-.9 E
|
||||||
|
(TION)-.95 E F0(Do)108 333.6 Q(wnload the tar)-.25 E(.gz v)-.55 E
|
||||||
|
(ersion of the package from the website.)-.15 E
|
||||||
|
(Then run these commands:)5 E F1(tar -zxvf of\215ineimap-x.y)108 350.4 Q
|
||||||
|
(.z.tar)-.7 E(.gz)-1 E(cd of\215ineimap-x.y)108 362.4 Q(.z)-.7 E F0 .149
|
||||||
|
(When you w)108 379.2 R .149(ant to run)-.1 F F1(Of\215ineIMAP)2.648 E
|
||||||
|
(,)-.92 E F0 .148(you will issue the)2.648 F F1(cd)2.648 E F0 .148
|
||||||
|
(command as abo)2.648 F .448 -.15(ve a)-.15 H .148(nd then type).15 F F1
|
||||||
|
(./of\215ineimap;)2.648 E F0(there is no installation step necessary)108
|
||||||
|
391.2 Q(.)-.65 E/F2 10.95/Times-Bold@0 SF(CONFIGURA)72 408 Q(TION)-1.04
|
||||||
|
E F1(Of\215ineIMAP)108 420 Q F0 .508(is re)3.008 F .508
|
||||||
|
(gulated by a con\214guration \214le that is normally stored in)-.15 F
|
||||||
|
/F3 10/Times-Italic@0 SF(~/.of)3.009 E(\215ineimapr)-.18 E(c.)-.37 E F1
|
||||||
|
(Of\215ineIMAP)5.509 E F0 .004(ships with a \214le named)108 432 R F3
|
||||||
|
(of)2.503 E(\215ineimap.conf)-.18 E F0 .003(that you should cop)2.503 F
|
||||||
|
2.503(yt)-.1 G 2.503(ot)-2.503 G .003(hat location and then edit.)-2.503
|
||||||
|
F .003(This \214le is vital)5.003 F .255
|
||||||
|
(to proper operation of the system; it sets e)108 444 R -.15(ve)-.25 G
|
||||||
|
.256(rything you need to run).15 F F1(Of\215ineIMAP)2.756 E(.)-1.1 E F0
|
||||||
|
.256(Full documentation for)5.256 F
|
||||||
|
(the con\214guration \214le is included within the sample \214le.)108
|
||||||
|
456 Q F2(OPTIONS)72 472.8 Q F0 .061
|
||||||
|
(Most con\214guration is done via the con\214guration \214le.)108 484.8
|
||||||
|
R(Ne)5.061 E -.15(ve)-.25 G .061(rtheless, there are a fe).15 F 2.561
|
||||||
|
(wo)-.25 G .061(ptions that you may set)-2.561 F(for)108 496.8 Q F1
|
||||||
|
(Of\215ineIMAP)2.5 E(.)-1.1 E<ad31>108 513.6 Q F0 .281(Disable all mult\
|
||||||
|
ithreading operations and use solely a single-thread sync.)25.3 F .281
|
||||||
|
(This ef)5.281 F(fecti)-.25 E -.15(ve)-.25 G .281(ly sets the).15 F F1
|
||||||
|
(maxsyncaccounts)144 525.6 Q F0(and all)2.5 E F1(maxconnections)2.5 E F0
|
||||||
|
(con\214guration \214le v)2.5 E(ariables to 1.)-.25 E F1<ad61>108 542.4
|
||||||
|
Q F3(accountlist)2.5 E F0(Ov)144 554.4 Q .84(errides the)-.15 F F1
|
||||||
|
(accounts)3.34 E F0 .84(section in the con\214g \214le.)3.34 F .84
|
||||||
|
(Lets you specify a particular account or set of)5.84 F 1.647
|
||||||
|
(accounts to sync without ha)144 566.4 R 1.647
|
||||||
|
(ving to edit the con\214g \214le.)-.2 F -1.1(Yo)6.648 G 4.148(um)1.1 G
|
||||||
|
1.648(ight use this to e)-4.148 F 1.648(xclude certain)-.15 F
|
||||||
|
(accounts, or to sync some accounts that you normally prefer not to.)144
|
||||||
|
578.4 Q F1<ad63>108 595.2 Q F3(con\214g\214le)2.5 E F0
|
||||||
|
(Speci\214es a con\214guration \214le to use in lieu of the def)144
|
||||||
|
607.2 Q(ault,)-.1 E F3(~/.of)2.5 E(\215ineimapr)-.18 E(c.)-.37 E F1
|
||||||
|
<ad64>108 624 Q F0 1.139(Enables IMAP protocol stream and parsing deb)
|
||||||
|
24.74 F 3.639(ugging. This)-.2 F 1.138
|
||||||
|
(is useful if you are trying to track)3.639 F(do)144 636 Q .081
|
||||||
|
(wn a malfunction or \214gure out what is going on under the hood.)-.25
|
||||||
|
F 2.582(Is)5.082 G .082(uggest that you use this with)-2.582 F F1<ad31>
|
||||||
|
144 648 Q F0 .336(in order to mak)2.836 F 2.836(et)-.1 G .335
|
||||||
|
(he results more sensible.)-2.836 F .335
|
||||||
|
(Note that this output will contain full IMAP proto-)5.335 F 1.7
|
||||||
|
(col in plain te)144 660 R 1.7(xt, including passw)-.15 F 1.7
|
||||||
|
(ords, so tak)-.1 F 4.2(ec)-.1 G 1.7(are to remo)-4.2 F 2 -.15(ve t)-.15
|
||||||
|
H 1.7(hat from the deb).15 F 1.7(ugging output)-.2 F
|
||||||
|
(before sending it to an)144 672 Q(yone else.)-.15 E F1
|
||||||
|
(\255h, \255\255help)108 688.8 Q F0(Sho)144 700.8 Q 2.5(ws)-.25 G
|
||||||
|
(ummary of options.)-2.5 E(John Goerzen)72 768 Q(July 11, 2002)151.655 E
|
||||||
|
(2)201.915 E EP
|
||||||
|
%%Page: 3 3
|
||||||
|
%%BeginPageSetup
|
||||||
|
BP
|
||||||
|
%%EndPageSetup
|
||||||
|
/F0 10/Times-Roman@0 SF 111.22(OFFLINEIMAP\(1\) Of)72 48 R
|
||||||
|
(\215ineIMAP manual)-.25 E(OFFLINEIMAP\(1\))113.72 E/F1 10/Times-Bold@0
|
||||||
|
SF<ad75>108 84 Q/F2 10/Times-Italic@0 SF(interface)2.5 E F0 1.133
|
||||||
|
(Speci\214es an alternati)144 96 R 1.433 -.15(ve u)-.25 H 1.133
|
||||||
|
(ser interf).15 F 1.133(ace module to use.)-.1 F 1.133(This o)6.133 F
|
||||||
|
-.15(ve)-.15 G 1.133(rrides the def).15 F 1.132(ault speci\214ed in the)
|
||||||
|
-.1 F .28(con\214guration \214le.)144 108 R .28(The UI speci\214ed with)
|
||||||
|
5.28 F F1(-u)2.78 E F0 .281(will be forced to be used, e)2.78 F -.15(ve)
|
||||||
|
-.25 G 2.781(ni).15 G 2.781(fi)-2.781 G(ts)-2.781 E F1(isuable\(\))2.781
|
||||||
|
E F0(method)2.781 E(states that it cannot be.)144 120 Q
|
||||||
|
(Use this option with care.)5 E/F3 10.95/Times-Bold@0 SF(EXAMPLES)72
|
||||||
|
136.8 Q F0(Here is an e)108 148.8 Q
|
||||||
|
(xample con\214guration for a particularly comple)-.15 E 2.5(xs)-.15 G
|
||||||
|
(ituation; more e)-2.5 E(xamples will be added later)-.15 E(.)-.55 E F1
|
||||||
|
(MUL)87 165.6 Q(TIPLE A)-.92 E(CCOUNTS WITH MUTT)-.55 E F0 .514(This e)
|
||||||
|
108 177.6 R .514(xample sho)-.15 F .514(ws you ho)-.25 F 3.014(wt)-.25 G
|
||||||
|
3.014(os)-3.014 G .514(et up)-3.014 F F1(Of\215ineIMAP)3.014 E F0 .513
|
||||||
|
(to synchronize multiple accounts with the mutt mail)3.014 F(reader)108
|
||||||
|
189.6 Q(.)-.55 E(Start by creating a directory to hold your folders:)108
|
||||||
|
206.4 Q F1(mkdir ~/Mail)108 218.4 Q F0(In your)108 235.2 Q F2(~/.of)2.5
|
||||||
|
E(\215ineimapr)-.18 E(c,)-.37 E F0(specify this:)2.5 E F1(accounts = P)
|
||||||
|
108 247.2 Q(ersonal, W)-.2 E(ork)-.75 E F0(Mak)108 264 Q 2.82(es)-.1 G
|
||||||
|
.32(ure that you ha)-2.82 F .62 -.15(ve b)-.2 H .32(oth a).15 F F1([P)
|
||||||
|
2.821 E(ersonal])-.2 E F0 .321(and a)2.821 F F1([W)2.821 E(ork])-.75 E
|
||||||
|
F0 .321(section, with dif)2.821 F .321(ferent localfolder pathnames and)
|
||||||
|
-.25 F(enable)108 276 Q F1([mbnames].)2.5 E F0
|
||||||
|
(In each account section, do something lik)108 292.8 Q 2.5(et)-.1 G
|
||||||
|
(his:)-2.5 E F1(localf)108 304.8 Q(olders = ~/Mail/P)-.25 E(ersonal)-.2
|
||||||
|
E F0(Add these lines to your)108 321.6 Q F2(~/.muttr)2.5 E(c:)-.37 E F1
|
||||||
|
(sour)108 333.6 Q(ce ~/path-to-mbnames-muttr)-.18 E(c-mailboxes)-.18 E
|
||||||
|
-.25(fo)108 345.6 S(lder).25 E(-hook P)-.37 E(ersonal set fr)-.2 E
|
||||||
|
(om="y)-.18 E(our)-.25 E(email@personal.com")-.18 E -.25(fo)108 357.6 S
|
||||||
|
(lder).25 E(-hook W)-.37 E(ork set fr)-.75 E(om="y)-.18 E(our)-.25 E
|
||||||
|
(email@w)-.18 E(ork.com")-.1 E(set mbox_type=Maildir)108 369.6 Q(set f)
|
||||||
|
108 381.6 Q(older=$HOME/Mail)-.25 E(set spool\214le=+P)108 393.6 Q
|
||||||
|
(ersonal/INBO)-.2 E(X)-.4 E F0(That')108 410.4 Q 2.5(si)-.55 G(t!)-2.5 E
|
||||||
|
F3(ERR)72 427.2 Q(ORS)-.329 E F0(If you get one of some frequently-enco\
|
||||||
|
untered or confusing errors, please check this section.)108 439.2 Q F1
|
||||||
|
(UID v)87 456 Q(alidity pr)-.1 E(oblem f)-.18 E(or f)-.25 E(older)-.25 E
|
||||||
|
F0 1.638(IMAP serv)108 468 R 1.637
|
||||||
|
(ers use a unique ID \(UID\) to refer to a speci\214c message.)-.15 F
|
||||||
|
1.637(This number is guaranteed to be)6.637 F 1.109
|
||||||
|
(unique to a particular message FOREVER.)108 480 R 1.109
|
||||||
|
(No other message in the same folder will e)6.109 F -.15(ve)-.25 G 3.61
|
||||||
|
(rg).15 G 1.11(et the same)-3.61 F 2.874(UID. UIDs)108 492 R .373
|
||||||
|
(are an inte)2.874 F .373(gral part of Of)-.15 F(\215ineIMAP')-.25 E
|
||||||
|
2.873(ss)-.55 G .373(ynchronization scheme; the)-2.873 F 2.873(ya)-.15 G
|
||||||
|
.373(re used to match up mes-)-2.873 F
|
||||||
|
(sages on your computer to messages on the serv)108 504 Q(er)-.15 E(.)
|
||||||
|
-.55 E .107(Sometimes, the UIDs on the serv)108 520.8 R .108
|
||||||
|
(er might get reset.)-.15 F .108
|
||||||
|
(Usually this will happen if you delete and then recreate)5.108 F 3.743
|
||||||
|
(af)108 532.8 S(older)-3.743 E 6.243(.W)-.55 G 1.243
|
||||||
|
(hen you create a folder)-6.243 F 3.742(,t)-.4 G 1.242(he serv)-3.742 F
|
||||||
|
1.242(er will often start the UID back from 1.)-.15 F(But)6.242 E F1
|
||||||
|
(Of\215ineIMAP)3.742 E F0 .302(might still ha)108 544.8 R .602 -.15
|
||||||
|
(ve t)-.2 H .302(he UIDs from the pre).15 F .302
|
||||||
|
(vious folder by the same name stored.)-.25 F F1(Of\215ineIMAP)5.303 E
|
||||||
|
F0 .303(will detect this)2.803 F(condition and skip the folder)108 556.8
|
||||||
|
Q 5(.T)-.55 G(his is GOOD, because it pre)-5 E -.15(ve)-.25 G
|
||||||
|
(nts data loss.).15 E -1.1(Yo)108 573.6 S 2.827(uc)1.1 G .327
|
||||||
|
(an \214x it by remo)-2.827 F .327
|
||||||
|
(ving your local folder and cache data.)-.15 F -.15(Fo)5.327 G 2.827(ri)
|
||||||
|
.15 G .327(nstance, if your folders are under)-2.827 F F2(~/F)2.826 E
|
||||||
|
(old-)-1.05 E(er)108 585.6 Q(s)-.1 E F0
|
||||||
|
(and the folder with the problem is INBO)2.5 E(X, you')-.4 E 2.5(dt)-.5
|
||||||
|
G(ype this:)-2.5 E F1(rm -r ~/F)108 602.4 Q(olders/INBO)-.25 E(X)-.4 E
|
||||||
|
(rm ~/.of\215ineimap/AccountName/INBO)108 614.4 Q(X)-.4 E F0
|
||||||
|
(\(replacing AccountName with the account name as speci\214ed in)108
|
||||||
|
631.2 Q F2(~/.of)2.5 E(\215ineimapr)-.18 E(c\))-.37 E F0(Ne)108 648 Q
|
||||||
|
.801(xt time you run)-.15 F F1(Of\215ineIMAP)3.301 E(,)-.92 E F0 .802
|
||||||
|
(it will re-do)3.302 F .802(wnload the folder with the ne)-.25 F 3.302
|
||||||
|
(wU)-.25 G 3.302(IDs. Note)-3.302 F .802(that the proce-)3.302 F
|
||||||
|
(dure speci\214ed abo)108 660 Q .3 -.15(ve w)-.15 H(ill lose an).15 E
|
||||||
|
2.5(yl)-.15 G(ocal changes made to the folder)-2.5 E(.)-.55 E .523
|
||||||
|
(Some IMAP serv)108 676.8 R .522(ers are brok)-.15 F .522
|
||||||
|
(en and do not support UIDs properly)-.1 F 5.522(.I)-.65 G 3.022(fy)
|
||||||
|
-5.522 G .522(ou continue to get this error for all)-3.022 F .066
|
||||||
|
(your folders e)108 688.8 R -.15(ve)-.25 G 2.566(na).15 G .066
|
||||||
|
(fter performing the abo)-2.566 F .366 -.15(ve p)-.15 H .066
|
||||||
|
(rocedure, it is lik).15 F .066(ely that your IMAP serv)-.1 F .066(er f)
|
||||||
|
-.15 F .067(alls into this cat-)-.1 F -.15(eg)108 700.8 S(ory).15 E(.)
|
||||||
|
-.65 E F1(Of\215ineIMAP)5.984 E F0 .984(is incompatible with such serv)
|
||||||
|
3.484 F 3.484(ers. Using)-.15 F F1(Of\215ineIMAP)3.484 E F0 .984
|
||||||
|
(with them will not destro)3.484 F(y)-.1 E(an)108 712.8 Q 2.769(ym)-.15
|
||||||
|
G .269(ail, b)-2.769 F .269
|
||||||
|
(ut at the same time, it will not actually synchronize it either)-.2 F
|
||||||
|
5.27(.\()-.55 G(Of)-5.27 E .27(\215ineIMAP will detect this con-)-.25 F
|
||||||
|
(dition and abort prior to synchronization\))108 724.8 Q(John Goerzen)72
|
||||||
|
768 Q(July 11, 2002)151.655 E(3)201.915 E EP
|
||||||
|
%%Page: 4 4
|
||||||
|
%%BeginPageSetup
|
||||||
|
BP
|
||||||
|
%%EndPageSetup
|
||||||
|
/F0 10/Times-Roman@0 SF 111.22(OFFLINEIMAP\(1\) Of)72 48 R
|
||||||
|
(\215ineIMAP manual)-.25 E(OFFLINEIMAP\(1\))113.72 E/F1 10.95
|
||||||
|
/Times-Bold@0 SF -.438(OT)72 84 S(HER FREQ).438 E(UENTL)-.11 E 2.738(YA)
|
||||||
|
-1.007 G(SKED Q)-2.738 E(UESTIONS)-.11 E F0 .684(There are some other F)
|
||||||
|
108 96 R -.55(AQ)-.74 G 3.184(st).55 G .684
|
||||||
|
(hat might not \214t into another section of this document, and the)
|
||||||
|
-3.184 F 3.183(ya)-.15 G .683(re enumer)-3.183 F(-)-.2 E(ated here.)108
|
||||||
|
108 Q/F2 10/Times-Bold@0 SF(What platf)108 124.8 Q
|
||||||
|
(orms does Of\215ineIMAP run on?)-.25 E F0(It should run on most platfo\
|
||||||
|
rms supported by Python, which are quite a fe)144 136.8 Q -.65(w.)-.25 G
|
||||||
|
F2 .688(I'm using Mutt. Other IMAP sync pr)108 153.6 R .689(ograms r)
|
||||||
|
-.18 F(equir)-.18 E 3.189(em)-.18 G 3.189(et)-3.189 G 3.189(ou)-3.189 G
|
||||||
|
.689(se set maildir_trash=y)-3.189 F .689(es . Do I need to)-.1 F
|
||||||
|
(do that with Of\215ineIMAP?)108 165.6 Q F0(No.)144 177.6 Q F2
|
||||||
|
(Of\215ineIMAP)7.27 E F0 2.27
|
||||||
|
(is smart enough to \214gure out message deletion without this e)4.77 F
|
||||||
|
2.27(xtra crutch.)-.15 F -1.1(Yo)144 189.6 S(u')1.1 E
|
||||||
|
(ll get the best results if you don')-.1 E 2.5(tu)-.18 G
|
||||||
|
(se this setting, in f)-2.5 E(act.)-.1 E F2(Ho)108 206.4 Q 2.5(wd)-.1 G
|
||||||
|
2.5(oIs)-2.5 G(pecify the names of my f)-2.5 E(olders?)-.25 E F0 -1.1
|
||||||
|
(Yo)144 218.4 S 3.55(ud)1.1 G 3.55(on)-3.55 G 1.05(ot need to.)-3.55 F
|
||||||
|
F2(Of\215ineIMAP)6.05 E F0 1.05
|
||||||
|
(is smart enough to automatically \214gure out what folders are)3.55 F
|
||||||
|
.678(present on the IMAP serv)144 230.4 R .678(er and synchronize them.)
|
||||||
|
-.15 F -1.1(Yo)5.679 G 3.179(uc)1.1 G .679(an use the)-3.179 F F2 -.25
|
||||||
|
(fo)3.179 G(lder\214lter).25 E F0(and)3.179 E F2 -.25(fo)3.179 G
|
||||||
|
(ldertrans).25 E F0(con\214guration \214le options to request certain f\
|
||||||
|
olders and rename them as the)144 242.4 Q 2.5(yc)-.15 G
|
||||||
|
(ome in if you lik)-2.5 E(e.)-.1 E F2(Ho)108 259.2 Q 2.5(wc)-.1 G
|
||||||
|
(an I pr)-2.5 E -2.3 -.15(ev e)-.18 H(nt certain f).15 E(olders fr)-.25
|
||||||
|
E(om being synced?)-.18 E F0(Use the)144 271.2 Q F2 -.25(fo)2.5 G
|
||||||
|
(lder\214lter).25 E F0(option in the con\214guration \214le.)2.5 E F2
|
||||||
|
(Ho)108 288 Q 2.5(wc)-.1 G(an I add or delete a f)-2.5 E(older?)-.25 E
|
||||||
|
(Of\215ineIMAP)144 300 Q F0 .504(does not currently pro)3.004 F .504
|
||||||
|
(vide this feature, b)-.15 F .504(ut if you create a ne)-.2 F 3.003(wf)
|
||||||
|
-.25 G .503(older on the IMAP)-3.003 F(serv)144 312 Q(er)-.15 E 2.5(,i)
|
||||||
|
-.4 G 2.5(tw)-2.5 G(ill be created locally automatically)-2.5 E(.)-.65 E
|
||||||
|
F2(Ar)108 328.8 Q 2.5(et)-.18 G(her)-2.5 E 2.5(ea)-.18 G(ny other war)
|
||||||
|
-2.5 E(nings that I should be awar)-.15 E 2.5(eo)-.18 G(f?)-2.5 E F0 -1
|
||||||
|
(Ye)144 340.8 S(s; see the NO)1 E(TES section belo)-.4 E -.65(w.)-.25 G
|
||||||
|
F2(What is the mailbox name r)108 357.6 Q(ecorder \(mbnames\) f)-.18 E
|
||||||
|
(or?)-.25 E F0 1.019(The Mutt mail reader is not capable of automatical\
|
||||||
|
ly determining the names of your mailbox)144 369.6 R(es.)-.15 E(Of)144
|
||||||
|
381.6 Q .266(\215ineIMAP can help it \(or man)-.25 F 2.765(yo)-.15 G
|
||||||
|
.265(ther\) programs out be writing these names out in a format you)
|
||||||
|
-2.765 F(specify)144 393.6 Q 5(.S)-.65 G(ee the e)-5 E(xample of)-.15 E
|
||||||
|
(\215ineimap.conf \214le for details.)-.25 E F2(Can I synchr)108 410.4 Q
|
||||||
|
(onize multiple accounts with Of\215ineIMAP?)-.18 E F0 3.344(Sure. Just)
|
||||||
|
144 422.4 R .845(name them all in the accounts line in the general sect\
|
||||||
|
ion of the con\214g \214le, and add a)3.344 F(per)144 434.4 Q
|
||||||
|
(-account section for each one.)-.2 E F2
|
||||||
|
(Does Of\215ineIMAP support POP?)108 451.2 Q F0 4.077(No. POP)144 463.2
|
||||||
|
R 1.576(is not rob)4.077 F 1.576(ust enough to do a completely reliable\
|
||||||
|
multi-machine synchronization lik)-.2 F(e)-.1 E(Of)144 475.2 Q
|
||||||
|
(\215ineIMAP can do.)-.25 E(Of)5 E(\215ineIMAP will not support it.)-.25
|
||||||
|
E F2(Do y)108 492 Q(ou support mailbox f)-.25 E
|
||||||
|
(ormats other than Maildir?)-.25 E F0 .409(Not at present.)144 504 R
|
||||||
|
.409(There is no technical reason not to; just no demand yet.)5.409 F
|
||||||
|
.41(Maildir is a superior for)5.41 F(-)-.2 E(mat an)144 516 Q(yw)-.15 E
|
||||||
|
(ay)-.1 E(.)-.65 E F2([technical] Wh)108 532.8 Q 2.5(ya)-.15 G .36 -.18
|
||||||
|
(re y)-2.5 H(our Maildir message \214lenames so huge?)-.07 E
|
||||||
|
(Of\215ineIMAP)144 544.8 Q F0 .959(has tw)3.459 F 3.459(or)-.1 G(ele)
|
||||||
|
-3.459 E -.25(va)-.25 G .959(nt principles: 1\) ne).25 F -.15(ve)-.25 G
|
||||||
|
3.459(rm).15 G .958(odifying your messages in an)-3.459 F 3.458(yw)-.15
|
||||||
|
G .958(ay and 2\))-3.558 F .493
|
||||||
|
(ensuring 100% reliable synchronizations.)144 556.8 R .493
|
||||||
|
(In order to do a reliable sync,)5.493 F F2(Of\215ineIMAP)2.993 E F0
|
||||||
|
.494(must ha)2.993 F -.15(ve)-.2 G 3.095(aw)144 568.8 S .595
|
||||||
|
(ay to uniquely identify each e-mail.)-3.195 F .594
|
||||||
|
(Three pieces of information are required to do this: your)5.594 F .537
|
||||||
|
(account name, the folder name, and the message UID.)144 580.8 R .538
|
||||||
|
(The account name can be calculated from)5.537 F 1.082
|
||||||
|
(the path in which your messages are.)144 592.8 R 1.082
|
||||||
|
(The folder name can usually be as well, B)6.082 F 1.081(UT some mail)
|
||||||
|
-.1 F(clients mo)144 604.8 Q .3 -.15(ve m)-.15 H
|
||||||
|
(essages between folders by simply mo).15 E(ving the \214le, lea)-.15 E
|
||||||
|
(ving the name intact.)-.2 E(So,)144 621.6 Q F2(Of\215ineIMAP)3.2 E F0
|
||||||
|
.7(must store both a UID folder ID.)3.2 F .7
|
||||||
|
(The folder ID is necessary so)5.7 F F2(Of\215ineIMAP)3.2 E F0 .456
|
||||||
|
(can detect a message mo)144 633.6 R -.15(ve)-.15 G 2.956(dt).15 G 2.955
|
||||||
|
(oad)-2.956 G(if)-2.955 E .455(ferent folder)-.25 F(.)-.55 E F2
|
||||||
|
(Of\215ineIMAP)5.455 E F0 .455(stores the UID \(U= number\) and)2.955 F
|
||||||
|
(an md5sum of the foldername \(FMD5= number\) to f)144 645.6 Q
|
||||||
|
(acilitate this.)-.1 E F2(What is the speed of Of\215ineIMAP')108 662.4
|
||||||
|
Q 2.5(ss)-.37 G(ync?)-2.5 E(Of\215ineIMAP)144 674.4 Q F0 -.15(ve)2.89 G
|
||||||
|
.39(rsions 2.0 and abo).15 F .691 -.15(ve c)-.15 H .391
|
||||||
|
(ontain a multithreaded system.).15 F 2.891(Ag)5.391 G .391(ood w)-2.891
|
||||||
|
F .391(ay to e)-.1 F(xperiment)-.15 E(is by setting maxsyncaccounts to \
|
||||||
|
3 and maxconnections to 3 in each account clause.)144 686.4 Q .382
|
||||||
|
(This lets Of)144 703.2 R .382
|
||||||
|
(\215ineIMAP open up multiple connections simultaneously)-.25 F 5.381
|
||||||
|
(.T)-.65 G .381(hat will let it process mul-)-5.381 F
|
||||||
|
(tiple folders and messages at once.)144 715.2 Q
|
||||||
|
(In most cases, this will increase performance of the sync.)5 E
|
||||||
|
(John Goerzen)72 768 Q(July 11, 2002)151.655 E(4)201.915 E EP
|
||||||
|
%%Page: 5 5
|
||||||
|
%%BeginPageSetup
|
||||||
|
BP
|
||||||
|
%%EndPageSetup
|
||||||
|
/F0 10/Times-Roman@0 SF 111.22(OFFLINEIMAP\(1\) Of)72 48 R
|
||||||
|
(\215ineIMAP manual)-.25 E(OFFLINEIMAP\(1\))113.72 E(Don')144 84 Q 3.103
|
||||||
|
(ts)-.18 G .603(et the number too high.)-3.103 F .603
|
||||||
|
(If you do that, things might actually slo)5.603 F 3.104(wd)-.25 G -.25
|
||||||
|
(ow)-3.104 G 3.104(na).25 G 3.104(sy)-3.104 G .604(our link gets)-3.104
|
||||||
|
F 2.633(saturated. Also,)144 96 R .133(too man)2.633 F 2.633(yc)-.15 G
|
||||||
|
.132(onnections can cause mail serv)-2.633 F .132(ers to ha)-.15 F .432
|
||||||
|
-.15(ve ex)-.2 H(cessi).15 E .432 -.15(ve l)-.25 H 2.632
|
||||||
|
(oad. Administra-).15 F .506(tors might tak)144 108 R 3.006(eu)-.1 G
|
||||||
|
.506(nkindly to this, and the serv)-3.006 F .507(er might bog do)-.15 F
|
||||||
|
3.007(wn. There)-.25 F .507(are man)3.007 F 3.007(yv)-.15 G .507
|
||||||
|
(ariables in the)-3.257 F(optimal setting; e)144 120 Q
|
||||||
|
(xperimentation may help.)-.15 E
|
||||||
|
(An informal benchmark yields these results for my setup:)144 136.8 Q
|
||||||
|
(10 minutes with MacOS X Mail.app "manual cache")144 153.6 Q 2.5(5m)144
|
||||||
|
165.6 S(inutes with GNUS agent sync)-2.5 E(20 seconds with Of)144 177.6
|
||||||
|
Q(\215ineIMAP 1.x)-.25 E 2.5(9s)144 189.6 S(econds with Of)-2.5 E
|
||||||
|
(\215ineIMAP 2.x)-.25 E 2.5(3s)144 201.6 S(econds with Of)-2.5 E
|
||||||
|
(\215ineIMAP 3.x "cold start")-.25 E 2.5(2s)144 213.6 S(econds with Of)
|
||||||
|
-2.5 E(\215ineIMAP 3.x "held connection")-.25 E/F1 10.95/Times-Bold@0 SF
|
||||||
|
(CONFORMING T)72 230.4 Q(O)-.197 E F0 32.5<8349>108 242.4 S
|
||||||
|
(nternet Message Access Protocol v)-32.5 E(ersion 4re)-.15 E
|
||||||
|
(v1 \(IMAP 4re)-.25 E(v1\) as speci\214ed in RFC2060)-.25 E 32.5<834d>
|
||||||
|
108 259.2 S 8.92(aildir as speci\214ed in http://www)-32.5 F(.qmail.or)
|
||||||
|
-.65 E(g/qmail-manual-html/man5/maildir)-.18 E 8.92(.html and)-.55 F
|
||||||
|
(http://cr)144 271.2 Q(.yp.to/proto/maildir)-.55 E(.html.)-.55 E 32.5
|
||||||
|
<8353>108 288 S
|
||||||
|
(tandard Python 2.2.1 as implemented on POSIX-compliant systems.)-32.5 E
|
||||||
|
F1(NO)72 304.8 Q(TES)-.438 E/F2 10/Times-Bold@0 SF
|
||||||
|
(DELETING LOCAL FOLDERS)87 316.8 Q(Of\215ineIMAP)108 328.8 Q F0 .532
|
||||||
|
(does a tw)3.032 F(o-w)-.1 E .532(ay synchronization.)-.1 F .532
|
||||||
|
(That is, if you mak)5.532 F 3.032(eac)-.1 G .532
|
||||||
|
(hange to the mail on the serv)-3.032 F(er)-.15 E 3.033(,i)-.4 G(t)
|
||||||
|
-3.033 E .897(will be propog)108 340.8 R .897(ated to your local cop)
|
||||||
|
-.05 F 2.197 -.65(y, a)-.1 H .897(nd vise-v).65 F 3.397(ersa. Some)-.15
|
||||||
|
F .896(people might think that it w)3.397 F .896(ould be wise to)-.1 F
|
||||||
|
1.59(just delete all their local mail folders periodically)108 352.8 R
|
||||||
|
6.59(.I)-.65 G 4.09(fy)-6.59 G 1.59(ou do this with Of)-4.09 F
|
||||||
|
(\215ineIMAP)-.25 E 4.09(,r)-1.11 G 1.59(emember to also)-4.09 F(remo)
|
||||||
|
108 364.8 Q 1.67 -.15(ve y)-.15 H 1.37(our local status cache \(~/.of)
|
||||||
|
.15 F 1.37(\215ineimap by def)-.25 F 3.87(ault\). Otherwise,)-.1 F(Of)
|
||||||
|
3.87 E 1.37(\215ineIMAP will tak)-.25 F 3.87(et)-.1 G 1.37(his as an)
|
||||||
|
-3.87 F .415(intentional deletion of man)108 376.8 R 2.915(ym)-.15 G
|
||||||
|
.416(essages and will interpret your action as requesting them to be de\
|
||||||
|
leted from)-2.915 F(the serv)108 388.8 Q(er as well.)-.15 E
|
||||||
|
(\(If you don')5 E 2.5(tu)-.18 G(nderstand this, don')-2.5 E 2.5(tw)-.18
|
||||||
|
G(orry; you probably w)-2.6 E(on')-.1 E 2.5(te)-.18 G
|
||||||
|
(ncounter this situation\))-2.5 E F2(MAILING LIST)87 405.6 Q F0
|
||||||
|
(There is an Of)108 417.6 Q(\215ineIMAP mailing list a)-.25 E -.25(va)
|
||||||
|
-.2 G(ilable.).25 E 2.448 -.8(To s)108 434.4 T .847
|
||||||
|
(ubscribe, send the te).8 F .847
|
||||||
|
(xt "Subscribe" in the subject of a mail to of)-.15 F
|
||||||
|
(\215ineimap-request@complete.or)-.25 E 3.347(g. T)-.18 F(o)-.8 E
|
||||||
|
(post, send the message to of)108 446.4 Q(\215ineimap@complete.or)-.25 E
|
||||||
|
(g.)-.18 E F1 -.11(BU)72 463.2 S(GS).11 E F0
|
||||||
|
(Should be reported to the author at the address speci\214ed belo)108
|
||||||
|
475.2 Q -.65(w.)-.25 G F1(COPYRIGHT)72 492 Q F0(Of)108 504 Q
|
||||||
|
(\215ineIMAP is Cop)-.25 E(yright \(C\) 2002 John Goerzen.)-.1 E .286
|
||||||
|
(This program is free softw)108 520.8 R .286(are; you can redistrib)-.1
|
||||||
|
F .287(ute it and/or modify it under the terms of the GNU General)-.2 F
|
||||||
|
.766(Public License as published by the Free Softw)108 532.8 R .766
|
||||||
|
(are F)-.1 F .766(oundation; either v)-.15 F .766
|
||||||
|
(ersion 2 of the License, or \(at your)-.15 F(option\) an)108 544.8 Q
|
||||||
|
2.5(yl)-.15 G(ater v)-2.5 E(ersion.)-.15 E .579(This program is distrib)
|
||||||
|
108 561.6 R .579(uted in the hope that it will be useful, b)-.2 F .58
|
||||||
|
(ut WITHOUT ANY W)-.2 F(ARRANTY)-1.2 E 3.08(;w)-.92 G(ithout)-3.08 E
|
||||||
|
-2.15 -.25(ev e)108 573.6 T 2.73(nt).25 G .23(he implied w)-2.73 F .229
|
||||||
|
(arranty of MERCHANT)-.1 F .229(ABILITY or FITNESS FOR A P)-.93 F(AR)
|
||||||
|
-.92 E .229(TICULAR PURPOSE.)-.6 F(See)5.229 E
|
||||||
|
(the GNU General Public License for more details.)108 585.6 Q -1.1(Yo)
|
||||||
|
108 602.4 S 2.77(us)1.1 G .27(hould ha)-2.77 F .57 -.15(ve r)-.2 H(ecei)
|
||||||
|
.15 E -.15(ve)-.25 G 2.77(dac).15 G(op)-2.77 E 2.77(yo)-.1 G 2.77(ft)
|
||||||
|
-2.77 G .27
|
||||||
|
(he GNU General Public License along with this program; if not, write)
|
||||||
|
-2.77 F(to:)108 614.4 Q(Free Softw)108 631.2 Q(are F)-.1 E
|
||||||
|
(oundation, Inc.)-.15 E(59 T)108 643.2 Q(emple Place)-.7 E(Suite 330)108
|
||||||
|
655.2 Q(Boston, MA)108 667.2 Q(02111-1307)5 E(USA)108 679.2 Q F1 -.548
|
||||||
|
(AU)72 696 S(THOR).548 E F2(Of\215ineIMAP)108 708 Q(,)-.92 E F0 .488
|
||||||
|
(its libraries, documentation, and all included \214les, e)2.988 F .488
|
||||||
|
(xcept where noted, w)-.15 F .487(as written by John)-.1 F
|
||||||
|
(Goerzen <jgoerzen@complete.or)108 720 Q(g> and cop)-.18 E
|
||||||
|
(yright is held as stated in the COPYRIGHT section.)-.1 E(John Goerzen)
|
||||||
|
72 768 Q(July 11, 2002)151.655 E(5)201.915 E EP
|
||||||
|
%%Page: 6 6
|
||||||
|
%%BeginPageSetup
|
||||||
|
BP
|
||||||
|
%%EndPageSetup
|
||||||
|
/F0 10/Times-Roman@0 SF 111.22(OFFLINEIMAP\(1\) Of)72 48 R
|
||||||
|
(\215ineIMAP manual)-.25 E(OFFLINEIMAP\(1\))113.72 E(Of)108 84 Q
|
||||||
|
(\215ineIMAP may be do)-.25 E(wnloaded, and information found, from its\
|
||||||
|
homepage via either Gopher or HTTP:)-.25 E(gopher://quux.or)108 100.8 Q
|
||||||
|
(g/1/de)-.18 E -.15(ve)-.25 G(l/of).15 E(\215ineimap)-.25 E
|
||||||
|
(http://quux.or)108 112.8 Q(g/de)-.18 E -.15(ve)-.25 G(l/of).15 E
|
||||||
|
(\215ineimap)-.25 E/F1 10.95/Times-Bold@0 SF(SEE ALSO)72 141.6 Q/F2 10
|
||||||
|
/Times-Bold@0 SF(mutt)108 153.6 Q F0(\(1\),)A F2(python)2.5 E F0(\(1\).)
|
||||||
|
A(John Goerzen)72 768 Q(July 11, 2002)151.655 E(6)201.915 E EP
|
||||||
|
%%Trailer
|
||||||
|
end
|
||||||
|
%%EOF
|
456
head/manual.txt
Normal file
456
head/manual.txt
Normal file
@ -0,0 +1,456 @@
|
|||||||
|
OFFLINEIMAP(1) OfflineIMAP manual OFFLINEIMAP(1)
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
NAME
|
||||||
|
OfflineIMAP - Powerful IMAP/Maildir synchronization and
|
||||||
|
reader support
|
||||||
|
|
||||||
|
SYNOPSIS
|
||||||
|
offlineimap [ -1 ] [ -a accountlist ] [ -c configfile ]
|
||||||
|
[ -d ] [ -u interface ]
|
||||||
|
|
||||||
|
offlineimap -h | --help
|
||||||
|
|
||||||
|
DESCRIPTION
|
||||||
|
OfflineIMAP is a tool to simplify your e-mail reading.
|
||||||
|
With OfflineIMAP, you can read the same mailbox from mul-
|
||||||
|
tiple computers. You get a current copy of your messages
|
||||||
|
on each computer, and changes you make one place will be
|
||||||
|
visible on all other systems. For instance, you can
|
||||||
|
delete a message on your home computer, and it will appear
|
||||||
|
deleted on your work computer as well. OfflineIMAP is
|
||||||
|
also useful if you want to use a mail reader that does not
|
||||||
|
have IMAP support, has poor IMAP support, or does not pro-
|
||||||
|
vide disconnected operation.
|
||||||
|
|
||||||
|
OfflineIMAP is FAST; it synchronizes my two accounts with
|
||||||
|
over 50 folders in 3 seconds. Other similar tools might
|
||||||
|
take over a minute, and achieve a less-reliable result.
|
||||||
|
Some mail readers can take over 10 minutes to do the same
|
||||||
|
thing, and some don't even support it at all. Unlike
|
||||||
|
other mail tools, OfflineIMAP features a multi-threaded
|
||||||
|
synchronization algorithm that can dramatically speed up
|
||||||
|
performance in many situations by synchronizing several
|
||||||
|
different things simultaneously.
|
||||||
|
|
||||||
|
OfflineIMAP is FLEXIBLE; you can customize which folders
|
||||||
|
are synced via regular expressions, lists, or Python
|
||||||
|
expressions; a versatile and comprehensive configuration
|
||||||
|
file is used to control behavior; two user interfaces are
|
||||||
|
built-in; fine-tuning of synchronization performance is
|
||||||
|
possible; internal or external automation is supported;
|
||||||
|
SSL and PREAUTH tunnels are both supported; offline (or
|
||||||
|
"unplugged") reading is supported; and esoteric IMAP fea-
|
||||||
|
tures are supported to ensure compatibility with the
|
||||||
|
widest variety of IMAP servers.
|
||||||
|
|
||||||
|
OfflineIMAP is SAFE; it uses an algorithm designed to pre-
|
||||||
|
vent mail loss at all costs. Because of the design of
|
||||||
|
this algorithm, even programming errors should not result
|
||||||
|
in loss of mail. I am so confident in the algorithm that
|
||||||
|
I use my own personal and work accounts for testing of
|
||||||
|
OfflineIMAP pre-release, development, and beta releases.
|
||||||
|
|
||||||
|
METHOD OF OPERATION
|
||||||
|
OfflineIMAP operates by maintaining a hierarchy of mail
|
||||||
|
folders in Maildir format locally. Your own mail reader
|
||||||
|
will read mail from this tree, and need never know that
|
||||||
|
the mail comes from IMAP. OfflineIMAP will detect changes
|
||||||
|
to the mail folders on your IMAP server and your own com-
|
||||||
|
puter and bi-directionally synchronize them, copying,
|
||||||
|
marking, and deleting messages as necessary.
|
||||||
|
|
||||||
|
INSTALLATION
|
||||||
|
If you are reading this document via the "man" command, it
|
||||||
|
is likely that you have no installation tasks to perform;
|
||||||
|
your system administrator has already installed it. If
|
||||||
|
you need to install it yourself, you have three options: a
|
||||||
|
system-wide installation with Debian, system-wide instal-
|
||||||
|
lation with other systems, and a single-user installation.
|
||||||
|
You can download the latest version of OfflineIMAP from
|
||||||
|
http://quux.org/devel/offlineimap/.
|
||||||
|
|
||||||
|
PREREQUISITES
|
||||||
|
In order to use OfflineIMAP, you need to have these condi-
|
||||||
|
tions satisfied:
|
||||||
|
|
||||||
|
o Your mail server must support IMAP. Most Internet
|
||||||
|
Service Providers and corporate networks do, and
|
||||||
|
most operating systems have an IMAP implementation
|
||||||
|
readily available.
|
||||||
|
|
||||||
|
o You must have Python version 2.2.1 or above
|
||||||
|
installed. If you are running on Debian GNU/Linux,
|
||||||
|
this requirement will automatically be taken care
|
||||||
|
of for you. If you do not have Python already,
|
||||||
|
check with your system administrator or operating
|
||||||
|
system vendor; or, download it from
|
||||||
|
http://www.python.org/. If you intend to use the
|
||||||
|
Tk interface, you must have Tkiner (python-tk)
|
||||||
|
installed. If you intend to use the SSL interface,
|
||||||
|
your Python must have been built with SSL support.
|
||||||
|
|
||||||
|
o Have a mail reader that supports the Maildir mail-
|
||||||
|
box format. Most modern mail readers have this
|
||||||
|
support built-in, so you can choose from a wide
|
||||||
|
variety of mail servers. This format is also known
|
||||||
|
as the "qmail" format, so any mail reader compati-
|
||||||
|
ble with it will work with OfflineIMAP.
|
||||||
|
|
||||||
|
DEBIAN SYSTEM-WIDE INSTALLATION
|
||||||
|
If you are tracking Debian unstable, you may install
|
||||||
|
OfflineIMAP by simply running the following command as
|
||||||
|
root:
|
||||||
|
|
||||||
|
apt-get install offlineimap
|
||||||
|
|
||||||
|
If you are not tracking Debian unstable, download the
|
||||||
|
Debian .deb package from the OfflineIMAP website and then
|
||||||
|
run dpkg -i to install the downloaded package. Then, go
|
||||||
|
to CONFIGURATION below. You will type offlineimap to
|
||||||
|
invoke the program.
|
||||||
|
|
||||||
|
OTHER SYSTEM-WIDE INSTALLATION
|
||||||
|
Download the tar.gz version of the package from the web-
|
||||||
|
site. Then run these commands:
|
||||||
|
|
||||||
|
tar -zxvf offlineimap-x.y.z.tar.gz
|
||||||
|
cd offlineimap-x.y.z
|
||||||
|
python2.2 setup.py
|
||||||
|
|
||||||
|
Some systems will need to use python instead of python2.2.
|
||||||
|
Next, proceed to configuration. You will type offlineimap
|
||||||
|
to invoke the program.
|
||||||
|
|
||||||
|
SINGLE-ACCOUNT INSTALLATION
|
||||||
|
Download the tar.gz version of the package from the web-
|
||||||
|
site. Then run these commands:
|
||||||
|
|
||||||
|
tar -zxvf offlineimap-x.y.z.tar.gz
|
||||||
|
cd offlineimap-x.y.z
|
||||||
|
|
||||||
|
When you want to run OfflineIMAP, you will issue the cd
|
||||||
|
command as above and then type ./offlineimap; there is no
|
||||||
|
installation step necessary.
|
||||||
|
|
||||||
|
CONFIGURATION
|
||||||
|
OfflineIMAP is regulated by a configuration file that is
|
||||||
|
normally stored in ~/.offlineimaprc. OfflineIMAP ships
|
||||||
|
with a file named offlineimap.conf that you should copy to
|
||||||
|
that location and then edit. This file is vital to proper
|
||||||
|
operation of the system; it sets everything you need to
|
||||||
|
run OfflineIMAP. Full documentation for the configuration
|
||||||
|
file is included within the sample file.
|
||||||
|
|
||||||
|
OPTIONS
|
||||||
|
Most configuration is done via the configuration file.
|
||||||
|
Nevertheless, there are a few options that you may set for
|
||||||
|
OfflineIMAP.
|
||||||
|
|
||||||
|
-1 Disable all multithreading operations and use
|
||||||
|
solely a single-thread sync. This effectively sets
|
||||||
|
the maxsyncaccounts and all maxconnections configu-
|
||||||
|
ration file variables to 1.
|
||||||
|
|
||||||
|
-a accountlist
|
||||||
|
Overrides the accounts section in the config file.
|
||||||
|
Lets you specify a particular account or set of
|
||||||
|
accounts to sync without having to edit the config
|
||||||
|
file. You might use this to exclude certain
|
||||||
|
accounts, or to sync some accounts that you nor-
|
||||||
|
mally prefer not to.
|
||||||
|
|
||||||
|
-c configfile
|
||||||
|
Specifies a configuration file to use in lieu of
|
||||||
|
the default, ~/.offlineimaprc.
|
||||||
|
|
||||||
|
-d Enables IMAP protocol stream and parsing debugging.
|
||||||
|
This is useful if you are trying to track down a
|
||||||
|
malfunction or figure out what is going on under
|
||||||
|
the hood. I suggest that you use this with -1 in
|
||||||
|
order to make the results more sensible. Note that
|
||||||
|
this output will contain full IMAP protocol in
|
||||||
|
plain text, including passwords, so take care to
|
||||||
|
remove that from the debugging output before send-
|
||||||
|
ing it to anyone else.
|
||||||
|
|
||||||
|
-h, --help
|
||||||
|
Show summary of options.
|
||||||
|
|
||||||
|
-u interface
|
||||||
|
Specifies an alternative user interface module to
|
||||||
|
use. This overrides the default specified in the
|
||||||
|
configuration file. The UI specified with -u will
|
||||||
|
be forced to be used, even if its isuable() method
|
||||||
|
states that it cannot be. Use this option with
|
||||||
|
care.
|
||||||
|
|
||||||
|
EXAMPLES
|
||||||
|
Here is an example configuration for a particularly com-
|
||||||
|
plex situation; more examples will be added later.
|
||||||
|
|
||||||
|
MULTIPLE ACCOUNTS WITH MUTT
|
||||||
|
This example shows you how to set up OfflineIMAP to syn-
|
||||||
|
chronize multiple accounts with the mutt mail reader.
|
||||||
|
|
||||||
|
Start by creating a directory to hold your folders:
|
||||||
|
mkdir ~/Mail
|
||||||
|
|
||||||
|
In your ~/.offlineimaprc, specify this:
|
||||||
|
accounts = Personal, Work
|
||||||
|
|
||||||
|
Make sure that you have both a [Personal] and a [Work]
|
||||||
|
section, with different localfolder pathnames and enable
|
||||||
|
[mbnames].
|
||||||
|
|
||||||
|
In each account section, do something like this:
|
||||||
|
localfolders = ~/Mail/Personal
|
||||||
|
|
||||||
|
Add these lines to your ~/.muttrc:
|
||||||
|
source ~/path-to-mbnames-muttrc-mailboxes
|
||||||
|
folder-hook Personal set from="youremail@personal.com"
|
||||||
|
folder-hook Work set from="youremail@work.com"
|
||||||
|
set mbox_type=Maildir
|
||||||
|
set folder=$HOME/Mail
|
||||||
|
set spoolfile=+Personal/INBOX
|
||||||
|
|
||||||
|
That's it!
|
||||||
|
|
||||||
|
ERRORS
|
||||||
|
If you get one of some frequently-encountered or confusing
|
||||||
|
errors, please check this section.
|
||||||
|
|
||||||
|
UID validity problem for folder
|
||||||
|
IMAP servers use a unique ID (UID) to refer to a specific
|
||||||
|
message. This number is guaranteed to be unique to a par-
|
||||||
|
ticular message FOREVER. No other message in the same
|
||||||
|
folder will ever get the same UID. UIDs are an integral
|
||||||
|
part of OfflineIMAP's synchronization scheme; they are
|
||||||
|
used to match up messages on your computer to messages on
|
||||||
|
the server.
|
||||||
|
|
||||||
|
Sometimes, the UIDs on the server might get reset. Usu-
|
||||||
|
ally this will happen if you delete and then recreate a
|
||||||
|
folder. When you create a folder, the server will often
|
||||||
|
start the UID back from 1. But OfflineIMAP might still
|
||||||
|
have the UIDs from the previous folder by the same name
|
||||||
|
stored. OfflineIMAP will detect this condition and skip
|
||||||
|
the folder. This is GOOD, because it prevents data loss.
|
||||||
|
|
||||||
|
You can fix it by removing your local folder and cache
|
||||||
|
data. For instance, if your folders are under ~/Folders
|
||||||
|
and the folder with the problem is INBOX, you'd type this:
|
||||||
|
|
||||||
|
rm -r ~/Folders/INBOX
|
||||||
|
rm ~/.offlineimap/AccountName/INBOX
|
||||||
|
|
||||||
|
(replacing AccountName with the account name as specified
|
||||||
|
in ~/.offlineimaprc)
|
||||||
|
|
||||||
|
Next time you run OfflineIMAP, it will re-download the
|
||||||
|
folder with the new UIDs. Note that the procedure speci-
|
||||||
|
fied above will lose any local changes made to the folder.
|
||||||
|
|
||||||
|
Some IMAP servers are broken and do not support UIDs prop-
|
||||||
|
erly. If you continue to get this error for all your
|
||||||
|
folders even after performing the above procedure, it is
|
||||||
|
likely that your IMAP server falls into this category.
|
||||||
|
OfflineIMAP is incompatible with such servers. Using
|
||||||
|
OfflineIMAP with them will not destroy any mail, but at
|
||||||
|
the same time, it will not actually synchronize it either.
|
||||||
|
(OfflineIMAP will detect this condition and abort prior to
|
||||||
|
synchronization)
|
||||||
|
|
||||||
|
|
||||||
|
OTHER FREQUENTLY ASKED QUESTIONS
|
||||||
|
There are some other FAQs that might not fit into another
|
||||||
|
section of this document, and they are enumerated here.
|
||||||
|
|
||||||
|
What platforms does OfflineIMAP run on?
|
||||||
|
It should run on most platforms supported by
|
||||||
|
Python, which are quite a few.
|
||||||
|
|
||||||
|
I'm using Mutt. Other IMAP sync programs require me to use
|
||||||
|
set maildir_trash=yes . Do I need to do that with
|
||||||
|
OfflineIMAP?
|
||||||
|
No. OfflineIMAP is smart enough to figure out mes-
|
||||||
|
sage deletion without this extra crutch. You'll
|
||||||
|
get the best results if you don't use this setting,
|
||||||
|
in fact.
|
||||||
|
|
||||||
|
How do I specify the names of my folders?
|
||||||
|
You do not need to. OfflineIMAP is smart enough to
|
||||||
|
automatically figure out what folders are present
|
||||||
|
on the IMAP server and synchronize them. You can
|
||||||
|
use the folderfilter and foldertrans configuration
|
||||||
|
file options to request certain folders and rename
|
||||||
|
them as they come in if you like.
|
||||||
|
|
||||||
|
How can I prevent certain folders from being synced?
|
||||||
|
Use the folderfilter option in the configuration
|
||||||
|
file.
|
||||||
|
|
||||||
|
How can I add or delete a folder?
|
||||||
|
OfflineIMAP does not currently provide this fea-
|
||||||
|
ture, but if you create a new folder on the IMAP
|
||||||
|
server, it will be created locally automatically.
|
||||||
|
|
||||||
|
Are there any other warnings that I should be aware of?
|
||||||
|
Yes; see the NOTES section below.
|
||||||
|
|
||||||
|
What is the mailbox name recorder (mbnames) for?
|
||||||
|
The Mutt mail reader is not capable of automati-
|
||||||
|
cally determining the names of your mailboxes.
|
||||||
|
OfflineIMAP can help it (or many other) programs
|
||||||
|
out be writing these names out in a format you
|
||||||
|
specify. See the example offlineimap.conf file for
|
||||||
|
details.
|
||||||
|
|
||||||
|
Can I synchronize multiple accounts with OfflineIMAP?
|
||||||
|
Sure. Just name them all in the accounts line in
|
||||||
|
the general section of the config file, and add a
|
||||||
|
per-account section for each one.
|
||||||
|
|
||||||
|
Does OfflineIMAP support POP?
|
||||||
|
No. POP is not robust enough to do a completely
|
||||||
|
reliable multi-machine synchronization like
|
||||||
|
OfflineIMAP can do. OfflineIMAP will not support
|
||||||
|
it.
|
||||||
|
|
||||||
|
Do you support mailbox formats other than Maildir?
|
||||||
|
Not at present. There is no technical reason not
|
||||||
|
to; just no demand yet. Maildir is a superior for-
|
||||||
|
mat anyway.
|
||||||
|
|
||||||
|
[technical] Why are your Maildir message filenames so
|
||||||
|
huge?
|
||||||
|
OfflineIMAP has two relevant principles: 1) never
|
||||||
|
modifying your messages in any way and 2) ensuring
|
||||||
|
100% reliable synchronizations. In order to do a
|
||||||
|
reliable sync, OfflineIMAP must have a way to
|
||||||
|
uniquely identify each e-mail. Three pieces of
|
||||||
|
information are required to do this: your account
|
||||||
|
name, the folder name, and the message UID. The
|
||||||
|
account name can be calculated from the path in
|
||||||
|
which your messages are. The folder name can usu-
|
||||||
|
ally be as well, BUT some mail clients move mes-
|
||||||
|
sages between folders by simply moving the file,
|
||||||
|
leaving the name intact.
|
||||||
|
|
||||||
|
So, OfflineIMAP must store both a UID folder ID.
|
||||||
|
The folder ID is necessary so OfflineIMAP can
|
||||||
|
detect a message moved to a different folder.
|
||||||
|
OfflineIMAP stores the UID (U= number) and an
|
||||||
|
md5sum of the foldername (FMD5= number) to facili-
|
||||||
|
tate this.
|
||||||
|
|
||||||
|
What is the speed of OfflineIMAP's sync?
|
||||||
|
OfflineIMAP versions 2.0 and above contain a multi-
|
||||||
|
threaded system. A good way to experiment is by
|
||||||
|
setting maxsyncaccounts to 3 and maxconnections to
|
||||||
|
3 in each account clause.
|
||||||
|
|
||||||
|
This lets OfflineIMAP open up multiple connections
|
||||||
|
simultaneously. That will let it process multiple
|
||||||
|
folders and messages at once. In most cases, this
|
||||||
|
will increase performance of the sync.
|
||||||
|
|
||||||
|
Don't set the number too high. If you do that,
|
||||||
|
things might actually slow down as your link gets
|
||||||
|
saturated. Also, too many connections can cause
|
||||||
|
mail servers to have excessive load. Administra-
|
||||||
|
tors might take unkindly to this, and the server
|
||||||
|
might bog down. There are many variables in the
|
||||||
|
optimal setting; experimentation may help.
|
||||||
|
|
||||||
|
An informal benchmark yields these results for my
|
||||||
|
setup:
|
||||||
|
|
||||||
|
10 minutes with MacOS X Mail.app "manual cache"
|
||||||
|
5 minutes with GNUS agent sync
|
||||||
|
20 seconds with OfflineIMAP 1.x
|
||||||
|
9 seconds with OfflineIMAP 2.x
|
||||||
|
3 seconds with OfflineIMAP 3.x "cold start"
|
||||||
|
2 seconds with OfflineIMAP 3.x "held connection"
|
||||||
|
|
||||||
|
CONFORMING TO
|
||||||
|
o Internet Message Access Protocol version 4rev1
|
||||||
|
(IMAP 4rev1) as specified in RFC2060
|
||||||
|
|
||||||
|
o Maildir as specified in http://www.qmail.org/qmail-
|
||||||
|
manual-html/man5/maildir.html and
|
||||||
|
http://cr.yp.to/proto/maildir.html.
|
||||||
|
|
||||||
|
o Standard Python 2.2.1 as implemented on POSIX-com-
|
||||||
|
pliant systems.
|
||||||
|
|
||||||
|
NOTES
|
||||||
|
DELETING LOCAL FOLDERS
|
||||||
|
OfflineIMAP does a two-way synchronization. That is, if
|
||||||
|
you make a change to the mail on the server, it will be
|
||||||
|
propogated to your local copy, and vise-versa. Some peo-
|
||||||
|
ple might think that it would be wise to just delete all
|
||||||
|
their local mail folders periodically. If you do this
|
||||||
|
with OfflineIMAP, remember to also remove your local sta-
|
||||||
|
tus cache (~/.offlineimap by default). Otherwise,
|
||||||
|
OfflineIMAP will take this as an intentional deletion of
|
||||||
|
many messages and will interpret your action as requesting
|
||||||
|
them to be deleted from the server as well. (If you don't
|
||||||
|
understand this, don't worry; you probably won't encounter
|
||||||
|
this situation)
|
||||||
|
|
||||||
|
MAILING LIST
|
||||||
|
There is an OfflineIMAP mailing list available.
|
||||||
|
|
||||||
|
To subscribe, send the text "Subscribe" in the subject of
|
||||||
|
a mail to offlineimap-request@complete.org. To post, send
|
||||||
|
the message to offlineimap@complete.org.
|
||||||
|
|
||||||
|
BUGS
|
||||||
|
Should be reported to the author at the address specified
|
||||||
|
below.
|
||||||
|
|
||||||
|
COPYRIGHT
|
||||||
|
OfflineIMAP is Copyright (C) 2002 John Goerzen.
|
||||||
|
|
||||||
|
This program is free software; you can redistribute it
|
||||||
|
and/or modify it under the terms of the GNU General Public
|
||||||
|
License as published by the Free Software Foundation;
|
||||||
|
either version 2 of the License, or (at your option) any
|
||||||
|
later version.
|
||||||
|
|
||||||
|
This program is distributed in the hope that it will be
|
||||||
|
useful, but WITHOUT ANY WARRANTY; without even the implied
|
||||||
|
warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
|
||||||
|
PURPOSE. See the GNU General Public License for more
|
||||||
|
details.
|
||||||
|
|
||||||
|
You should have received a copy of the GNU General Public
|
||||||
|
License along with this program; if not, write to:
|
||||||
|
|
||||||
|
Free Software Foundation, Inc.
|
||||||
|
59 Temple Place
|
||||||
|
Suite 330
|
||||||
|
Boston, MA 02111-1307
|
||||||
|
USA
|
||||||
|
|
||||||
|
AUTHOR
|
||||||
|
OfflineIMAP, its libraries, documentation, and all
|
||||||
|
included files, except where noted, was written by John
|
||||||
|
Goerzen <jgoerzen@complete.org> and copyright is held as
|
||||||
|
stated in the COPYRIGHT section.
|
||||||
|
|
||||||
|
OfflineIMAP may be downloaded, and information found, from
|
||||||
|
its homepage via either Gopher or HTTP:
|
||||||
|
|
||||||
|
gopher://quux.org/1/devel/offlineimap
|
||||||
|
http://quux.org/devel/offlineimap
|
||||||
|
|
||||||
|
|
||||||
|
SEE ALSO
|
||||||
|
mutt(1), python(1).
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
John Goerzen July 11, 2002 OFFLINEIMAP(1)
|
@ -2,7 +2,7 @@
|
|||||||
.\" First parameter, NAME, should be all caps
|
.\" First parameter, NAME, should be all caps
|
||||||
.\" Second parameter, SECTION, should be 1-8, maybe w/ subsection
|
.\" Second parameter, SECTION, should be 1-8, maybe w/ subsection
|
||||||
.\" other parameters are allowed: see man(7), man(1)
|
.\" other parameters are allowed: see man(7), man(1)
|
||||||
.TH OFFLINEIMAP 1 "July 11, 2002" "quux.org" "OfflineIMAP manual"
|
.TH OFFLINEIMAP 1 "July 11, 2002" "John Goerzen" "OfflineIMAP manual"
|
||||||
.\" Please adjust this date whenever revising the manpage.
|
.\" Please adjust this date whenever revising the manpage.
|
||||||
.\"
|
.\"
|
||||||
.\" Some roff macros, for reference:
|
.\" Some roff macros, for reference:
|
||||||
@ -16,31 +16,33 @@
|
|||||||
.\" .sp <n> insert n+1 empty lines
|
.\" .sp <n> insert n+1 empty lines
|
||||||
.\" for manpage-specific macros, see man(7)
|
.\" for manpage-specific macros, see man(7)
|
||||||
.SH NAME
|
.SH NAME
|
||||||
OfflineIMAP \- IMAP/Maildir synchronization and reader support
|
OfflineIMAP \- Powerful IMAP/Maildir synchronization and reader support
|
||||||
.SH SYNOPSIS
|
.SH SYNOPSIS
|
||||||
.B offlineimap
|
.B offlineimap
|
||||||
[
|
[
|
||||||
.BI -1
|
.BI \-1
|
||||||
]
|
]
|
||||||
[
|
[
|
||||||
.BI -a \ accountlist
|
.BI \-a \ accountlist
|
||||||
]
|
]
|
||||||
[
|
[
|
||||||
.BI -c \ configfile
|
.BI \-c \ configfile
|
||||||
]
|
]
|
||||||
.br
|
.br
|
||||||
[
|
[
|
||||||
.BI -d
|
.BI \-d
|
||||||
]
|
]
|
||||||
[
|
[
|
||||||
.BI -u " interface"
|
.BI \-u " interface"
|
||||||
]
|
]
|
||||||
|
|
||||||
.\".RI [ -c \ foo ]
|
.\".RI [ -c \ foo ]
|
||||||
.\".RI [ options ] " files" ...
|
.\".RI [ options ] " files" ...
|
||||||
.br
|
.br
|
||||||
.B offlineimap
|
.B offlineimap
|
||||||
.B -h
|
.B \-h
|
||||||
|
|
|
||||||
|
.B \-\-help
|
||||||
.\".RI [ options ] " files" ...
|
.\".RI [ options ] " files" ...
|
||||||
.SH DESCRIPTION
|
.SH DESCRIPTION
|
||||||
.B OfflineIMAP
|
.B OfflineIMAP
|
||||||
@ -90,38 +92,460 @@ should not result in loss of mail. I am so confident in the algorithm
|
|||||||
that I use my own personal and work accounts for testing of
|
that I use my own personal and work accounts for testing of
|
||||||
.B OfflineIMAP
|
.B OfflineIMAP
|
||||||
pre-release, development, and beta releases.
|
pre-release, development, and beta releases.
|
||||||
|
.SS "METHOD OF OPERATION"
|
||||||
|
.B OfflineIMAP
|
||||||
|
operates by maintaining a hierarchy of mail folders in Maildir format
|
||||||
|
locally. Your own mail reader will read mail from this tree, and need
|
||||||
|
never know that the mail comes from IMAP.
|
||||||
|
.B OfflineIMAP
|
||||||
|
will detect changes to the mail folders on your IMAP server and your
|
||||||
|
own computer and bi-directionally synchronize them, copying, marking,
|
||||||
|
and deleting messages as necessary.
|
||||||
|
.SH INSTALLATION
|
||||||
|
If you are reading this document via the "man" command, it is likely
|
||||||
|
that you have no installation tasks to perform; your system
|
||||||
|
administrator has already installed it. If you need to install it
|
||||||
|
yourself, you have three options: a system-wide installation with
|
||||||
|
Debian, system-wide installation with other systems, and a single-user
|
||||||
|
installation. You can download the latest version of OfflineIMAP from
|
||||||
|
.UR http://quux.org/devel/offlineimap/
|
||||||
|
http://quux.org/devel/offlineimap/.
|
||||||
|
.UE
|
||||||
|
.SS PREREQUISITES
|
||||||
|
In order to use OfflineIMAP, you need to have these conditions
|
||||||
|
satisfied:
|
||||||
|
.IP \(bu
|
||||||
|
Your mail server must support IMAP. Most Internet Service Providers
|
||||||
|
and corporate networks do, and most operating systems have an IMAP
|
||||||
|
implementation readily available.
|
||||||
|
.IP \(bu
|
||||||
|
You must have Python version 2.2.1 or above installed. If you are
|
||||||
|
running on Debian GNU/Linux, this requirement will automatically be
|
||||||
|
taken care of for you. If you do not have Python already, check with
|
||||||
|
your system administrator or operating system vendor; or, download it
|
||||||
|
from
|
||||||
|
.UR http://www.python.org/
|
||||||
|
http://www.python.org/.
|
||||||
|
.UE
|
||||||
|
If you intend to use the Tk interface, you must have Tkiner
|
||||||
|
(python-tk) installed. If you intend to use the SSL interface, your
|
||||||
|
Python must have been built with SSL support.
|
||||||
|
.IP \(bu
|
||||||
|
Have a mail reader that supports the Maildir mailbox format. Most
|
||||||
|
modern mail readers have this support built-in, so you can choose from
|
||||||
|
a wide variety of mail servers. This format is also known as the
|
||||||
|
"qmail" format, so any mail reader compatible with it will work with
|
||||||
|
OfflineIMAP.
|
||||||
|
.SS DEBIAN SYSTEM-WIDE INSTALLATION
|
||||||
|
If you are tracking Debian unstable, you may install
|
||||||
|
.B OfflineIMAP
|
||||||
|
by simply running the following command as root:
|
||||||
.PP
|
.PP
|
||||||
This manual page documents briefly the
|
.B apt-get install offlineimap
|
||||||
|
.PP
|
||||||
|
If you are not tracking Debian unstable, download the Debian .deb
|
||||||
|
package from the OfflineIMAP website
|
||||||
|
and then run
|
||||||
|
.B dpkg -i
|
||||||
|
to install the downloaded package. Then, go to CONFIGURATION below.
|
||||||
|
You will type
|
||||||
.B offlineimap
|
.B offlineimap
|
||||||
and
|
to invoke the program.
|
||||||
.B bar
|
.SS OTHER SYSTEM-WIDE INSTALLATION
|
||||||
commands.
|
Download the tar.gz version of the package from the website. Then run
|
||||||
This manual page was written for the Debian distribution
|
these commands:
|
||||||
because the original program does not have a manual page.
|
|
||||||
Instead, it has documentation in the GNU Info format; see below.
|
|
||||||
.PP
|
.PP
|
||||||
|
.B tar -zxvf offlineimap-x.y.z.tar.gz
|
||||||
|
.br
|
||||||
|
.B cd offlineimap-x.y.z
|
||||||
|
.br
|
||||||
|
.B python2.2 setup.py
|
||||||
|
.PP
|
||||||
|
Some systems will need to use
|
||||||
|
.B python
|
||||||
|
instead of
|
||||||
|
.B python2.2.
|
||||||
|
Next, proceed to configuration. You will type
|
||||||
|
.B offlineimap
|
||||||
|
to invoke the program.
|
||||||
|
.SS SINGLE-ACCOUNT INSTALLATION
|
||||||
|
Download the tar.gz version of the package from the website. Then run
|
||||||
|
these commands:
|
||||||
|
.PP
|
||||||
|
.B tar -zxvf offlineimap-x.y.z.tar.gz
|
||||||
|
.br
|
||||||
|
.B cd offlineimap-x.y.z
|
||||||
|
.PP
|
||||||
|
When you want to run
|
||||||
|
.B OfflineIMAP,
|
||||||
|
you will issue the
|
||||||
|
.B cd
|
||||||
|
command as above and then type
|
||||||
|
.B ./offlineimap;
|
||||||
|
there is no installation step necessary.
|
||||||
|
.\"##################################################
|
||||||
|
.SH CONFIGURATION
|
||||||
|
.B OfflineIMAP
|
||||||
|
is regulated by a configuration file that is normally stored in
|
||||||
|
.I ~/.offlineimaprc.
|
||||||
|
.B OfflineIMAP
|
||||||
|
ships with a file named
|
||||||
|
.I offlineimap.conf
|
||||||
|
that you should copy to that location and then edit. This file is
|
||||||
|
vital to proper operation of the system; it sets everything you need
|
||||||
|
to run
|
||||||
|
.B OfflineIMAP.
|
||||||
|
Full documentation for the configuration file is included within the
|
||||||
|
sample file.
|
||||||
|
.\"##################################################
|
||||||
.\" TeX users may be more comfortable with the \fB<whatever>\fP and
|
.\" TeX users may be more comfortable with the \fB<whatever>\fP and
|
||||||
.\" \fI<whatever>\fP escape sequences to invode bold face and italics,
|
.\" \fI<whatever>\fP escape sequences to invode bold face and italics,
|
||||||
.\" respectively.
|
.\" respectively.
|
||||||
\fBofflineimap\fP is a program that...
|
.\"\fBofflineimap\fP is a program that...
|
||||||
.SH OPTIONS
|
.SH OPTIONS
|
||||||
These programs follow the usual GNU command line syntax, with long
|
Most configuration is done via the configuration file. Nevertheless,
|
||||||
options starting with two dashes (`-').
|
there are a few options that you may set for
|
||||||
A summary of options is included below.
|
.B OfflineIMAP.
|
||||||
For a complete description, see the Info files.
|
.TP
|
||||||
|
.B \-1
|
||||||
|
Disable all multithreading operations and use solely a single-thread
|
||||||
|
sync. This effectively sets the
|
||||||
|
.B maxsyncaccounts
|
||||||
|
and all
|
||||||
|
.B maxconnections
|
||||||
|
configuration file variables to 1.
|
||||||
|
.TP
|
||||||
|
.BI \-a \ accountlist
|
||||||
|
Overrides the
|
||||||
|
.B accounts
|
||||||
|
section in the config file. Lets you specify a particular account or
|
||||||
|
set of accounts to sync without having to edit the config file. You
|
||||||
|
might use this to exclude certain accounts, or to sync some accounts
|
||||||
|
that you normally prefer not to.
|
||||||
|
.TP
|
||||||
|
.BI \-c \ configfile
|
||||||
|
Specifies a configuration file to use in lieu of the default,
|
||||||
|
.I ~/.offlineimaprc.
|
||||||
|
.TP
|
||||||
|
.BI \-d
|
||||||
|
Enables IMAP protocol stream and parsing debugging. This is useful if
|
||||||
|
you are trying to track down a malfunction or figure out what is going
|
||||||
|
on under the hood. I suggest that you use this with
|
||||||
|
.BI \-1
|
||||||
|
in order to make the results more sensible. Note that this output
|
||||||
|
will contain full IMAP protocol in plain text, including passwords, so
|
||||||
|
take care to remove that from the debugging output before sending it
|
||||||
|
to anyone else.
|
||||||
.TP
|
.TP
|
||||||
.B \-h, \-\-help
|
.B \-h, \-\-help
|
||||||
Show summary of options.
|
Show summary of options.
|
||||||
.TP
|
.TP
|
||||||
.B \-v, \-\-version
|
.BI \-u \ interface
|
||||||
Show version of program.
|
Specifies an alternative user interface module to use. This overrides
|
||||||
.SH SEE ALSO
|
the default specified in the configuration file. The UI specified
|
||||||
.BR bar (1),
|
with
|
||||||
.BR baz (1).
|
.B -u
|
||||||
|
will be forced to be used, even if its
|
||||||
|
.B isuable()
|
||||||
|
method states that it cannot be. Use this option with care.
|
||||||
|
.\".TP
|
||||||
|
.\".B \-v, \-\-version
|
||||||
|
.\"Show version of program.
|
||||||
|
.SH EXAMPLES
|
||||||
|
Here is an example configuration for a particularly complex situation;
|
||||||
|
more examples will be added later.
|
||||||
|
.SS MULTIPLE ACCOUNTS WITH MUTT
|
||||||
|
This example shows you how to set up
|
||||||
|
.B OfflineIMAP
|
||||||
|
to synchronize multiple accounts with the mutt mail reader.
|
||||||
|
.PP
|
||||||
|
Start by creating a directory to hold your folders:
|
||||||
.br
|
.br
|
||||||
The programs are documented fully by
|
.B mkdir ~/Mail
|
||||||
.IR "The Rise and Fall of a Fooish Bar" ,
|
.PP
|
||||||
available via the Info system.
|
In your
|
||||||
|
.I ~/.offlineimaprc,
|
||||||
|
specify this:
|
||||||
|
.br
|
||||||
|
.B accounts = Personal, Work
|
||||||
|
.PP
|
||||||
|
Make sure that you have both a
|
||||||
|
.B [Personal]
|
||||||
|
and a
|
||||||
|
.B [Work]
|
||||||
|
section, with different localfolder pathnames and enable
|
||||||
|
.B [mbnames].
|
||||||
|
.PP
|
||||||
|
In each account section, do something like this:
|
||||||
|
.br
|
||||||
|
.B localfolders = ~/Mail/Personal
|
||||||
|
.PP
|
||||||
|
Add these lines to your
|
||||||
|
.I ~/.muttrc:
|
||||||
|
.br
|
||||||
|
.B source ~/path-to-mbnames-muttrc-mailboxes
|
||||||
|
.br
|
||||||
|
.B folder-hook Personal set from="youremail@personal.com"
|
||||||
|
.br
|
||||||
|
.B folder-hook Work set from="youremail@work.com"
|
||||||
|
.br
|
||||||
|
.B set mbox_type=Maildir
|
||||||
|
.br
|
||||||
|
.B set folder=$HOME/Mail
|
||||||
|
.br
|
||||||
|
.B set spoolfile=+Personal/INBOX
|
||||||
|
.PP
|
||||||
|
That's it!
|
||||||
|
.SH ERRORS
|
||||||
|
If you get one of some frequently-encountered or confusing errors,
|
||||||
|
please check this section.
|
||||||
|
.SS UID validity problem for folder
|
||||||
|
IMAP servers use a unique ID (UID) to refer to a specific message.
|
||||||
|
This number is guaranteed to be unique to a particular message
|
||||||
|
FOREVER. No other message in the same folder will ever get the same
|
||||||
|
UID. UIDs are an integral part of OfflineIMAP's synchronization
|
||||||
|
scheme; they are used to match up messages on your computer to
|
||||||
|
messages on the server.
|
||||||
|
.PP
|
||||||
|
Sometimes, the UIDs on the server might get reset. Usually this will
|
||||||
|
happen if you delete and then recreate a folder. When you create a
|
||||||
|
folder, the server will often start the UID back from 1. But
|
||||||
|
.B OfflineIMAP
|
||||||
|
might still have the UIDs from the previous folder by the
|
||||||
|
same name stored.
|
||||||
|
.B OfflineIMAP
|
||||||
|
will detect this condition and skip the
|
||||||
|
folder. This is GOOD, because it prevents data loss.
|
||||||
|
.PP
|
||||||
|
You can fix it by removing your local folder and cache data. For
|
||||||
|
instance, if your folders are under
|
||||||
|
.I ~/Folders
|
||||||
|
and the folder with the
|
||||||
|
problem is INBOX, you'd type this:
|
||||||
|
.PP
|
||||||
|
.B rm -r ~/Folders/INBOX
|
||||||
|
.br
|
||||||
|
.B rm ~/.offlineimap/AccountName/INBOX
|
||||||
|
.PP
|
||||||
|
(replacing AccountName with the account name as specified in
|
||||||
|
.I ~/.offlineimaprc)
|
||||||
|
.PP
|
||||||
|
Next time you run
|
||||||
|
.B OfflineIMAP,
|
||||||
|
it will re-download the folder with the
|
||||||
|
new UIDs. Note that the procedure specified above will lose any local
|
||||||
|
changes made to the folder.
|
||||||
|
.PP
|
||||||
|
Some IMAP servers are broken and do not support UIDs properly. If you
|
||||||
|
continue to get this error for all your folders even after performing
|
||||||
|
the above procedure, it is likely that your IMAP server falls into
|
||||||
|
this category.
|
||||||
|
.B OfflineIMAP
|
||||||
|
is incompatible with such servers. Using
|
||||||
|
.B OfflineIMAP
|
||||||
|
with them will not destroy any mail, but at the same time,
|
||||||
|
it will not actually synchronize it either. (OfflineIMAP will detect
|
||||||
|
this condition and abort prior to synchronization)
|
||||||
|
|
||||||
|
.SH OTHER FREQUENTLY ASKED QUESTIONS
|
||||||
|
There are some other FAQs that might not fit into another section of
|
||||||
|
this document, and they are enumerated here.
|
||||||
|
.TP
|
||||||
|
.B What platforms does OfflineIMAP run on?
|
||||||
|
It should run on most platforms supported by Python, which are quite a
|
||||||
|
few.
|
||||||
|
.TP
|
||||||
|
.B I'm using Mutt. Other IMAP sync programs require me to use "set maildir_trash=yes". Do I need to do that with OfflineIMAP?
|
||||||
|
No.
|
||||||
|
.B OfflineIMAP
|
||||||
|
is smart enough to figure out message deletion without this extra
|
||||||
|
crutch. You'll get the best results if you don't use this setting, in
|
||||||
|
fact.
|
||||||
|
.TP
|
||||||
|
.B How do I specify the names of my folders?
|
||||||
|
You do not need to.
|
||||||
|
.B OfflineIMAP
|
||||||
|
is smart enough to automatically figure out what folders are present
|
||||||
|
on the IMAP server and synchronize them. You can use the
|
||||||
|
.B folderfilter
|
||||||
|
and
|
||||||
|
.B foldertrans
|
||||||
|
configuration file options to request certain folders and rename them
|
||||||
|
as they come in if you like.
|
||||||
|
.TP
|
||||||
|
.B How can I prevent certain folders from being synced?
|
||||||
|
Use the
|
||||||
|
.B folderfilter
|
||||||
|
option in the configuration file.
|
||||||
|
.TP
|
||||||
|
.B How can I add or delete a folder?
|
||||||
|
.B OfflineIMAP
|
||||||
|
does not currently provide this feature, but if you create a new
|
||||||
|
folder on the IMAP server, it will be created locally automatically.
|
||||||
|
.TP
|
||||||
|
.B Are there any other warnings that I should be aware of?
|
||||||
|
Yes; see the NOTES section below.
|
||||||
|
.TP
|
||||||
|
.B What is the mailbox name recorder (mbnames) for?
|
||||||
|
The Mutt mail reader is not capable of automatically determining
|
||||||
|
the names of your mailboxes. OfflineIMAP can help it (or many other)
|
||||||
|
programs out be writing these names out in a format you specify. See
|
||||||
|
the example offlineimap.conf file for details.
|
||||||
|
.TP
|
||||||
|
.B Can I synchronize multiple accounts with OfflineIMAP?
|
||||||
|
Sure. Just name them all in the accounts line in the general
|
||||||
|
section of the config file, and add a per-account section for each one.
|
||||||
|
.TP
|
||||||
|
.B Does OfflineIMAP support POP?
|
||||||
|
No. POP is not robust enough to do a completely reliable
|
||||||
|
multi-machine synchronization like OfflineIMAP can do. OfflineIMAP
|
||||||
|
will not support it.
|
||||||
|
.TP
|
||||||
|
.B Do you support mailbox formats other than Maildir?
|
||||||
|
Not at present. There is no technical reason not to; just no
|
||||||
|
demand yet. Maildir is a superior format anyway.
|
||||||
|
.TP
|
||||||
|
.B [technical] Why are your Maildir message filenames so huge?
|
||||||
|
.B OfflineIMAP
|
||||||
|
has two relevant principles: 1) never modifying your
|
||||||
|
messages in any way and 2) ensuring 100% reliable synchronizations.
|
||||||
|
In order to do a reliable sync,
|
||||||
|
.B OfflineIMAP
|
||||||
|
must have a way to
|
||||||
|
uniquely identify each e-mail. Three pieces of information are
|
||||||
|
required to do this: your account name, the folder name, and the
|
||||||
|
message UID. The account name can be calculated from the path in
|
||||||
|
which your messages are. The folder name can usually be as well, BUT
|
||||||
|
some mail clients move messages between folders by simply moving the
|
||||||
|
file, leaving the name intact.
|
||||||
|
.IP
|
||||||
|
So,
|
||||||
|
.B OfflineIMAP
|
||||||
|
must store both a UID folder ID. The folder ID is
|
||||||
|
necessary so
|
||||||
|
.B OfflineIMAP
|
||||||
|
can detect a message moved to a different
|
||||||
|
folder.
|
||||||
|
.B OfflineIMAP
|
||||||
|
stores the UID (U= number) and an md5sum of the
|
||||||
|
foldername (FMD5= number) to facilitate this.
|
||||||
|
.TP
|
||||||
|
.B What is the speed of OfflineIMAP's sync?
|
||||||
|
.B OfflineIMAP
|
||||||
|
versions 2.0 and above contain a multithreaded system. A good way to
|
||||||
|
experiment is by setting maxsyncaccounts to 3 and maxconnections to 3
|
||||||
|
in each account clause.
|
||||||
|
.IP
|
||||||
|
This lets OfflineIMAP open up multiple connections simultaneously.
|
||||||
|
That will let it process multiple folders and messages at once. In
|
||||||
|
most cases, this will increase performance of the sync.
|
||||||
|
.IP
|
||||||
|
Don't set the number too high. If you do that, things might actually
|
||||||
|
slow down as your link gets saturated. Also, too many connections can
|
||||||
|
cause mail servers to have excessive load. Administrators might take
|
||||||
|
unkindly to this, and the server might bog down. There are many
|
||||||
|
variables in the optimal setting; experimentation may help.
|
||||||
|
.IP
|
||||||
|
An informal benchmark yields these results for my setup:
|
||||||
|
.IP
|
||||||
|
10 minutes with MacOS X Mail.app "manual cache"
|
||||||
|
.br
|
||||||
|
5 minutes with GNUS agent sync
|
||||||
|
.br
|
||||||
|
20 seconds with OfflineIMAP 1.x
|
||||||
|
.br
|
||||||
|
9 seconds with OfflineIMAP 2.x
|
||||||
|
.br
|
||||||
|
3 seconds with OfflineIMAP 3.x "cold start"
|
||||||
|
.br
|
||||||
|
2 seconds with OfflineIMAP 3.x "held connection"
|
||||||
|
.SH CONFORMING TO
|
||||||
|
.IP \(bu
|
||||||
|
Internet Message Access Protocol version 4rev1 (IMAP 4rev1) as
|
||||||
|
specified in RFC2060
|
||||||
|
.IP \(bu
|
||||||
|
Maildir as specified in
|
||||||
|
.UR http://www.qmail.org/qmail-manual-html/man5/maildir.html
|
||||||
|
http://www.qmail.org/qmail-manual-html/man5/maildir.html
|
||||||
|
.UE
|
||||||
|
and
|
||||||
|
.UR http://cr.yp.to/proto/maildir.html
|
||||||
|
http://cr.yp.to/proto/maildir.html.
|
||||||
|
.UE
|
||||||
|
.IP \(bu
|
||||||
|
Standard Python 2.2.1 as implemented on POSIX-compliant systems.
|
||||||
|
.SH NOTES
|
||||||
|
.SS DELETING LOCAL FOLDERS
|
||||||
|
.B OfflineIMAP
|
||||||
|
does a two-way synchronization. That is, if you
|
||||||
|
make a change to the mail on the server, it will be propogated to your
|
||||||
|
local copy, and vise-versa. Some people might think that it would be
|
||||||
|
wise to just delete all their local mail folders periodically. If you
|
||||||
|
do this with OfflineIMAP, remember to also remove your local status
|
||||||
|
cache (~/.offlineimap by default). Otherwise, OfflineIMAP will take
|
||||||
|
this as an intentional deletion of many messages and will interpret
|
||||||
|
your action as requesting them to be deleted from the server as well.
|
||||||
|
(If you don't understand this, don't worry; you probably won't
|
||||||
|
encounter this situation)
|
||||||
|
.SS MAILING LIST
|
||||||
|
There is an OfflineIMAP mailing list available.
|
||||||
|
.PP
|
||||||
|
To subscribe, send the text "Subscribe" in the subject of a mail to
|
||||||
|
offlineimap-request@complete.org. To post, send the message to
|
||||||
|
offlineimap@complete.org.
|
||||||
|
.SH BUGS
|
||||||
|
Should be reported to the author at the address specified below.
|
||||||
|
.SH COPYRIGHT
|
||||||
|
OfflineIMAP is Copyright (C) 2002 John Goerzen.
|
||||||
|
.PP
|
||||||
|
This program is free software; you can redistribute it and/or modify
|
||||||
|
it under the terms of the GNU General Public License as published by
|
||||||
|
the Free Software Foundation; either version 2 of the License, or
|
||||||
|
(at your option) any later version.
|
||||||
|
.PP
|
||||||
|
This program is distributed in the hope that it will be useful,
|
||||||
|
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
GNU General Public License for more details.
|
||||||
|
.PP
|
||||||
|
You should have received a copy of the GNU General Public License
|
||||||
|
along with this program; if not, write to:
|
||||||
|
.PP
|
||||||
|
Free Software Foundation, Inc.
|
||||||
|
.br
|
||||||
|
59 Temple Place
|
||||||
|
.br
|
||||||
|
Suite 330
|
||||||
|
.br
|
||||||
|
Boston, MA 02111-1307
|
||||||
|
.br
|
||||||
|
USA
|
||||||
.SH AUTHOR
|
.SH AUTHOR
|
||||||
This manual page was written by John Goerzen <jgoerzen@complete.org>,
|
.B OfflineIMAP,
|
||||||
for the Debian GNU/Linux system (but may be used by others).
|
its libraries, documentation, and all included files, except where
|
||||||
|
noted, was written by John Goerzen <jgoerzen@complete.org> and
|
||||||
|
copyright is held as stated in the COPYRIGHT section.
|
||||||
|
.PP
|
||||||
|
OfflineIMAP may be downloaded, and information found, from its
|
||||||
|
homepage via either Gopher or HTTP:
|
||||||
|
.PP
|
||||||
|
.UR gopher://quux.org/1/devel/offlineimap
|
||||||
|
gopher://quux.org/1/devel/offlineimap
|
||||||
|
.UE
|
||||||
|
.br
|
||||||
|
.UR http://quux.org/devel/offlineimap
|
||||||
|
http://quux.org/devel/offlineimap
|
||||||
|
.UE
|
||||||
|
|
||||||
|
.SH SEE ALSO
|
||||||
|
.BR mutt (1),
|
||||||
|
.BR python (1).
|
||||||
|
.\".BR bar (1),
|
||||||
|
.\".BR baz (1).
|
||||||
|
.\".br
|
||||||
|
.\"The programs are documented fully by
|
||||||
|
.\".IR "The Rise and Fall of a Fooish Bar" ,
|
||||||
|
.\"available via the Info system.
|
||||||
|
.\".SH AUTHOR
|
||||||
|
.\"This manual page was written by John Goerzen <jgoerzen@complete.org>,
|
||||||
|
.\"for the Debian GNU/Linux system (but may be used by others).
|
||||||
|
Loading…
Reference in New Issue
Block a user