Content tagged caldav

Intro

It has been a while since I wrote the post on moving emails out of GMail. I have since managed to experiment a little with various web apps available on the internet and arrived at a solution that is not perfect, but meets my needs well. I will describe what I currently use for dealing with emails, contacts and calendars in this article. It's really quite astonishing how many different pieces are needed to provide the GMail experience.

Mail

The goal is to be able to read, send and consistently browse emails from Linux PCs using a fast and responsive client with offline browsing support, from a Web browser using something that looks nice and supports threading, and from an Android mobile phone. There is plenty IMAP and SMTP clients out there for all of these platforms, but the following three worked best for me:

  • Thunderbird - no fireworks, but it's good enough. The only real issues I have with it are: the message threading being messed up on occasions, ie. it groups messages that don't belong together; and the address book not managing to handle the full vCard information properly, there will be more about this later. I've recently learned about Trojitá and it may actually be exactly what I need - to be evaluated.
  • RoundCube - pretty great, but may get sluggish at times, although this is probably due to a fact that I run it using a shared hosting. I extend it with the two following plugins in order to handle multiple accounts with one "instance":
  • Kaiten Mail - by far the best email client for Android that I have ever used. I like it for good threading support and intuitive GUI.

Contacts and Calendar in the cloud

Another big piece of GMail's added value is the ability to manage contacts and calendar (the calendar actually is a separate product) and keep them synchronized between devices. It does it in a rather messy way for my taste, but it does it well. I have once found an informative how-to article describing a solution to this using ownCloud as a CardDAV and a CalDAV server, but I did not like the web interface ownCloud provides. There's a couple of alternatives doing the same thing, and the one I like is Baïkal.

I install the flat version and switch it to use basic http authentication. Baïkal (actually SabreDAV, which Baïkal uses internally for DAV) uses the digest authentication by default, which is supposed to be more secure, but I found it glitchy with many clients.

Baïkal settings panel
Baïkal settings panel

Baïkal is just a CardDAV and CalDAV server and, as such, just manages the users and resources, it doesn't come with any clients, so you'll need to install them separately. I use:

  • CalDavZAP - a calendar client. In order to configure it, set the href element of the globalNetworkCheckSettings array to 'https://yourdomain.com/baikal/cal.php/principals/'
  • CardDavMATE - an addressbook client. Change the href element of the globalNetworkCheckSettings array to 'https://yourdomain.com/baikal/card.php/principals/'. I also change globalContactStoreFN, this affects how other clients see the contact's Formatted Name - I like to see the first name first.

Note: the two above work reliably only with basic http authentication, so you probably want to use https access to the DAV server.

You can then export all your contacts from GMail to a vCard format and then upload them to Baïkal using another tool of mine.

Calendar and address book clients

Thunderbird will need three extra plug-ins:

  • Lightning - for calendar support:
  • Go to File->New->Calendar..
  • Select On the network
  • Select CalDAV and tick the Offline support
  • Enter address of the calendar, ie: https://yourdomain.com/baikal/cal.php/calendars/user/calendarid
  • SOGo Connector and MoreFunctionsForAddressBook - for decent enough address book functionality:
  • Go to Address Book
  • Go to File->New->Remote Address Book
  • Give a name to the address book
  • Enter the URL of the address book, ie: https://yourdomain.com/baikal/card.php/addressbook/user/bookid/

RoundCube needs two plug-ins:

  • carddav and carddav_plus:
    • Go to Settings
    • Go to CardDAV Settings
    • Add the address books using the same addresses as in the case of Thunderbird
    • Go to Address Book
    • Click Synchronize

Android apps needed to integrate the calendar and the address book:

  • CardDAV-Sync beta
  • CalDAV-Sync beta
  • If you use HTC Sense, you may have some issues integrating the contacts, this should help in solving them
  • The new Android contact editor is also somewhat retarded, but you can still download a port of the old one.

What's next?

The setup described above allows for handy integration of all my devices. Although, I find having to log-in to all the web apps separately somewhat annoying. I will need to find some single-sign-on solution to integrate them. Another big thing missing is GTalk. I know it's just jabber, but I find it handy to have the chat history accessible from one place. I will play with this a bit as well.