Contacts on WebDAV

From Evolution

Contents

[edit]

About

The evolution webdav contacts plugin allows storing small to medium sized addressbooks on a webdav server. It performs ok for several hundred addresses. So this is an easy way to share addresses with multiple clients.

Contacts are stored on the server as 1 .vcf file per contact. This allows easy backup and management on the server side. (Similar to the advantages of maildir over mbox)

[edit]

Troubleshooting

This is how to get more detailed information on what is going wrong (since the plugin interfaces to report errors are quiet limited unfortunately):

  • Close Evolution
  • Kill all evolution-data-server instances. Find their names out with "ps ax" and kill them with a command like this:
killall evolution-data-server-2.24
  • Start your own evolution-data-server instance on a console. You might have to search for the executable as helper programs are usually not on the path. This is the location for ubuntu:
/usr/lib/evolution/evolution-data-server-2.24
  • Start evolution again. Errors and warnings from evolution-data-server should appear on the console now.
[edit]

Common Pitfalls

  • The webdav server has to support ETags and If-Match headers. ETags are only optional in the webdav standard but should be supported by nearly all servers implementations out there. Older apache versions (pre 2.2.8) have buggy If-Match handling, so you might have to enable the workaround for that in the settings.
  • The webdav server has to know the x-vcard mimetype. (This is a little strict and is planned to be improved in a future version). You might have to add the following line to /etc/mime.types (on your server):
text/x-vcard                    vcf
[edit]

FAQ

  • What about (V)carddav? VCardDAV is a proposed extension to webdav which simplify storage of addressbooks on the server. It should be easy to extend the plugin to support carddav servers. However I'm not aware of any open source carddav server implementations at the moment. So I don't have any plans at the moment to work on this (but will happily accept patches).