Well, a bunch of people were quite interested in the news that Apple have released a CalDAV server under an open source license, myself included. It is available from the CalendarServer project webpage.
They state that they've only tested it under MacOS X. Which as I 've tried to compile it under Linux certainly shows!
I've managed to fight through the various bits and pieces and managed to get it to run! <phew>
Here are a few notes regarding my experience, some steps and packages might be missing. These are directly related to Debian Unstable.
Required Debian packages:
attr (and make sure that partition is mounted with the option user_xattr, as mentioned in to the comments you can also run `mount -oremount,user_xattr <mount point>`)
You need to build the Python xattr package, by running (somewhere handy) the following. You may not need to actually checkout the code first. I had to do this as it wasn't automatically checked out for me. Of course, YMMV.
PyKerberos - Also the patches from trac might be useful. Don't worry about the includes one that is on trac, my supplied patch over rides that.
PyKerberos will need to be patched before it will compile, Twisted will compile but will do the wrong things with the extended attributes until is is patched. Then just re-running "run" from inside the CalendarServer directory should pick up the change.
I found the method that worked reasonably well was run "run -s" as provided by CalendarServer and whenever it broke (after checking out the required packages) apply the patch that I've provided, then run "run -s" again.
Update: Added details about plistlib.py and alternative to mounting the filesystem. Thanks Andrew M. Update 2: Add fact that xattr wasn't automatically downloaded for me. Update 3: The PyKerberos patch should now continue to work for MacOS X folks, and added details about the patches from Trac.