So, in an attempt to further degoogle my life, I installed Radicale. It’s a small but powerful CalDAV (calendars, to-do lists) and CardDAV (contacts) server written in Python. It comes with Debian.
Sadly, things aren’t as smooth as I would want them.
The first problem was that authentication via Apache didn’t work. It was weird. When I didn’t have the password file, Apache complained. When I had it, with a user and a password, Apache would let me in but I’d get to the Radicale login box, and there no login worked.
I guess what happened is that somehow Radicale either did not receive the username from Apache, or looked it up and didn’t find it, so I don’t know.
I decided to use Radicale directly, based on the page on the Debian Wiki. That seemed to work.
The second problem is that I could add the CalDAV and CardDAV accounts to my iOS device, but when I used the Contacts or Calendar app, these new accounts still did not show up. All I got is my work account (Exchange) and Gmail. None of that self-hosted stuff.
OK, next morning, checking the debug log, I see some activity from my iOS devices – and Calendar integration seems to work! When I set it up, I used
https://example.org/radicale/ and that allowed me to set it up but not to use it. Then I tried
https://example.org/radicale/alex and that seems to be working, with
alex being my username, or my collection name, or both. Oh dear.
The documentation has the following to say:
Many clients do not support the creation of new calendars and address books. You can use Radicale’s web interface (e.g.
http://localhost:5232) to create and manage address books and calendars.
In some clients you can just enter the URL of the Radicale server (e.g.
http://localhost:5232) and your user name. In others, you have to enter the URL of the collection directly (e.g.
So now I can choose my new calendar in the Calendar app.
It still doesn’t seem to work for Contacts, though. But to be honest, I don’t think I need those as much. I’ve had a text file with ten addresses for a year or two…
I’ll keep looking for the correct setup info.