I use Mozilla Thunderbird for accessing my home email from work, which I connect to using ssh tunneling.
For Calendaring support I have the Thunderbird plugin Lightning.
My email account is hosted on an IMAP server.
My problem was how to keep my Thunderbird address book, Calendar and Tasks synchronized between between Thunderbird at Home, Work or where ever.
This plugin has some very cool functionality.
First make sure you have Lightning installed.
Then create a folder tree in your IMAP account named something like this:
The zzz prefix just makes sure the folder is away from your normal sent, inbox etc.
Then download and install SyncKolab from https://addons.mozilla.org/en-US/thunderbird/. The easiest way is to click Tools ==> Add-ons while in TBird and then click the Get Extensions button.
Once installed configure it (click Tools ==> SyncKolab Options) to point to the previously created folders for each type of item you want to synchronize. I accepted all the defaults. Also you can set a number of minutes (I chose 60) to auto-sync which means you don’t have to trigger synchronization yourself.
When triggered (Tools ==> Start SyncKolab) the SyncKolab plugin will then scan you local Calendar, Tasks and Address book for new items, convert them to Kolab xml format, and copy them to the IMAP folders you specified above.
From then on every time you start SyncKolab it will compare your local Address, Cal, Task items with the IMAP Server and either upload, download or delete local or remote items to keep your local installation in sync with the IMAP server.
The end result is you will have a central copy of all your Address, Cal and Task items hosted in your IMAP mailbox. Then whenever you re-install Tbird or move workstations you can simply install SyncKolab and get your Address book back easily.
Note: I use Windows XP at work and Ubuntu 8.04 at home.