[This post is work in progress. ]
These are a few notes on setting up a DAViCal server and access from my Android phone.
Server part
Note: DAViCal needs PostgreSQL to store its database. If you are on a cheap LAMP hosting, PostgreSQL may not be available. I am not aware of a MySQL implementation.
My server is running CentOS 5. I installed DAViCal by following the instructions specific to my distro. More specifically, I installed the RPMs provided by Andrew McMillan on his web site: DAViCal and the AWL libraries.
The easiest way is to create a dedicated sub-domain to host your Caldav server. Something like “caldav.example.net”.
More details to follow, including:
DNS configuration
Please refer to the specific documentation regarding the management of your domain name. Depending who is running the DNS service for your domain, different actions might be needed. In my case, I have a bash shell script which calls the Bind nspudate utility to insert the DNS records in the zone file.
Apache configuration
The location of the Apache configuration files is highly distribution dependent. In the case of RHEL/CentOS, they live under /etc/httpd/conf.d for virtual hosts.
I added the following to a file called caldav.conf
# Virtual Host definition for DAViCal <VirtualHost *:80 > CustomLog /var/log/httpd/caldav.access_log "combined" ErrorLog /var/log/httpd/caldav.error_log DocumentRoot /usr/share/davical/htdocs DirectoryIndex index.php index.html ServerName caldav.example.net Alias /images/ /usr/share/davical/htdocs/images/ <Directory /usr/share/davical/htdocs/> AllowOverride None Order allow,deny Allow from all </Directory> </VirtualHost> # Virtual Host definition for DAViCal. Also for SSL <VirtualHost *:443 > CustomLog /var/log/httpd/caldav.access_log "combined" ErrorLog /var/log/httpd/caldav.error_log DocumentRoot /usr/share/davical/htdocs DirectoryIndex index.php index.html ServerName caldav.example.net Alias /images/ /usr/share/davical/htdocs/images/ <Directory /usr/share/davical/htdocs/> AllowOverride None Order allow,deny Allow from all </Directory> </VirtualHost>
PostgreSQL configuration
How to install and configure PostgreSQL is outside the scope of this How-To. Some Googling will help you find guidance.
SSL certificate
Basically, I created a SSL certificate for my server with several DNSAltName attributes. One of the sub-domains is for Caldav. This would cost you thousands with your average certificate authority. Which is why I went to CACert.
User account configuration
This is all explained on the DAViCal WIKI.
The cherry on the cake is that DAViCal can also act as a CARDDAV server for your address book(s). For this, I use CardDAV on the Android side.
For what it is worth, I confirm DAViCal works fine with Apple’s iCal and Address Books. It also works fine with KDE on Linux, specifically KAddressBook and Kontacts for calendaring and contacts. Mozilla Thunderbird’s Lightning add-on for calendaring work fine, too.
Client part
I still use Hypermatix Calendar Sync for Android. This is now been discontinued and replaced with Andal.
I have not tried CalDAV-Sync, but it received good reviews. This last one is implemented as a sync adapter and might be more transparent than the one I use.

Recent Comments