Self Hosted Calendar Server With Radicale

Everyone of us need a Calendar, to organise time, not forget meetings, birthdays, dates, interviews, parties, etc. Out there in the world there are a lot of application that can help to solve that, and even a lot of service that can do it for you, for free, and synchronise it with all your environments/devices, one over all Google Calendar.

But sometimes for business need, for privacy or just for fun, you may want to set up your own calendar server.

I have already my server, with mail(IMAPS and SMPTS) and few websites, so i thought that could have been cool have a calendar server there as well.

So i started my search with ‘apt-cache search caldav server’ i found that there are quite a lot of options, and even some software that offer a complete productivity suite, but i needed only one simple software that could speak caldav, in a way that i could integrate my desktop and phone calendar. One really good option was to use cyrus caldav, because i already use cyrus as mail server, but in debian wheezy (my server OS) is not there, so i dropped back to choose between two more lightweight solution: radicale and davical

Checking how much dependencies each of this two tool needed i chosen radicale, that it’s a simple python based caldav server, the devical is instead, written in php, it needed postgresql(at least by default) and few other tens of packages.

going ahead with radicale i just installed it with apt and configured for my needs, that were: have a caldav server running in ssl and with some authentication method.

radicale support ssl almost out of box, you just need to find it in the config file ‘/etc/radicale/config’ and enable it, this is the snippet:

1# SSL flag, enable HTTPS protocol
2ssl = True
3# SSL certificate path
4certificate = /etc/ssl/certs/my_cert.crt
5# SSL private key
6key = /etc/ssl/private/my_cert.key

For the authentication has been a bit more tricky, i wanted to connect it to my IMAP server, and radicale has a quite easy setting for do that, but as usual not for the version in wheezy, that was a bit annoying, but with some work in the apt repository settings, i could import the jessie package in wheezy without break all the updates and so on.

You may wonder why i didn’t do that for cyrus instead, the main point is that i didn’t want to break any working service, and do a cross version upgrade of a so small package has been quite safe and easy.

So at the end the configuration of imap was just to find the authentication part in the ‘/etc/radicale/config’ and enable it, as snippets:

enable imap auth:

2# Authentication method
3# Value: None | htpasswd | IMAP | LDAP | PAM | courier | http | remote_user | custom
4type = IMAP

configure the IMAP server:

1# IMAP Configuration
2imap_hostname = localhost
3imap_port = 993
4imap_ssl = True

done this i just created a new calendar opening the specific urls as the radicale documentation explain.

i added the calendar in Thunderbird, and used Caldav Sync Free Beta in my android phone.

that’s it, now i have my private, secure, shared between devices, CALENDAR.


Java Shell Script
13 May 2015
Tags: ,

Self Hosted Calendar Server With Radicale
2 May 2015

New Blog
14 April 2014

Primitive Boxing Problem
20 November 2012
Tags: ,

DDD Query Way
20 October 2012
Tags: , ,




Object Query