kcaldav is a simple, safe, and minimal CalDAV server depending only on kcgi, sqlite3, and expat. It is open source with friendly, auditable source code.
To contribute to kcaldav, visit the GitHub page for source code layout, bug report tips, and so on.
kcaldav is designed for simple setups, like sharing a calendar collection between Mozilla Lightning, Mac OS X iCal, DAVdroid forks, and iOS (iPhone) clients. It compiles and runs on OpenBSD, Linux, NetBSD, FreeBSD, Mac OS X, Solaris, and OmniOS.
- Install dependencies kcgi, sqlite3, and expat. (On Mac OS X, these must be installed as third-party packages alongside the base utilities: the pkg-config scripts are not installed for the libraries in base.)
- Download the sources and verify the fingerprint.
- Configure for your installation by creating a Makefile.local using variables documented in the Makefile. (You will need to do this: installation paths for CGI scripts differ vastly!)
./configure. Compile with
make, install with
make install, then install the CGI script and its data files with
- If using Apache, make sure that HTTP authorisation is not interpreted by the web server. (Example.)
- Read and follow kcaldav(8).
The kcaldav(8) manual has a complete description of supported CalDAV features. You'll also want to read kcaldav.passwd(1). If these manpages lack information or clarity, that's a bug.