Apple's Calendar Server working with Evolution and CalDAV on Debian Unstable

Following on from some failed attempts on Friday, it seems that Andrew Ruthven has had some success getting Apple's Calendaring Server going on Debian. Great! I managed to duplicate Andrew Ruthven's success after five minutes by applying his PyKerberos patch so I now needed a calendar application that talks to this...One of the reasons I had been trying to get this going in the first place is that Evolution has a CalDAV plugin. Andrew had told me that this didn't work for him though, and after quickly failing myself and not finding a lot of help from debugging information, or from sniffing with WireShark, I decided to try Chandler.Trying to use ChandlerI tried to roughly follow the build instructions from the Chandler website to build Chandler on Debian unstable. The downloadable builds strongly suggest that they won't work except on Ubuntu Breezy, so I didn't initially go to them. Unfortunately (or perhaps fortunately) the builds.osafoundation.org server appeared uncontactable and this is where a vast raft of stuff seems to want to be downloaded from.So I went for the .tar.gz binary download that the Chandler folks currently build on Breezy and in spite of all of their caveats it seems to work just fine on Debian Sid.Well, maybe "just fine" is exaggerating, but this is 0.7 alpha 03 release, after all:Pressing 'Today' showed me the past week.Trying to edit the date/time of an appointment made it rapidly and wierdly move into the pastIt didn't appear likely that I would use this application even if it did work for me.It seemed to be about as usable and stable as Evolution was pre version 1.0That made me really sad. I had got Chandler to connect to the CalendarServer, even if I couldn't see that it was writing any appointments to it. The URLs used and so forth were enough of a clue bat to point out that I needed to connect to Getting Evolution WorkingIt turns out to be pretty simple to get Evolution to work with the existing 'admin' user:Adding a new userOK, so lets add ourselves as a user...Edit the file conf/repository-dev.xml and look for an element called '<accounts>' near the bottom of the file. You need to paste your user in something like this: <user> <uid>andrewmcmillan</uid> <pswd>password</pswd> <name>Andrew McMillan</name> <calendar>calendar</calendar> </user>Then configure your new calendar with the "URL" set to "caldav://localhost:8008/calendars/users/andrewmcmillan/calendar/" (because we told CalendarServer to put the calendar into the 'calendar' folder. The "Username" should be set to whatever you chose, of course.Where to from here?Well, I think that I probably need to read the docs for this now :-)I want to try and create a bunch of users, resources and the possiblity of other's sharing calendars. Creating resources looks easy enough from the repository-static.xml example, and I seem to have done that, but I think I need to get together with some of the other guys at work fiddling with this and see if we can do a shared installation.After that, of course, I will be looking for some Debian packages of it all. Especially since it was this Debian ITP message that got me (re-)started on all of this. Good luck Guido!

Following on from some failed attempts on Friday, it seems that Andrew Ruthven has had some success getting Apple's Calendaring Server going on Debian. Great! I managed to duplicate Andrew Ruthven's success after five minutes by applying his PyKerberos patch so I now needed a calendar application that talks to this...

One of the reasons I had been trying to get this going in the first place is that Evolution has a CalDAV plugin. Andrew had told me that this didn't work for him though, and after quickly failing myself and not finding a lot of help from debugging information, or from sniffing with WireShark, I decided to try Chandler.

Trying to use Chandler

I tried to roughly follow the build instructions from the Chandler website to build Chandler on Debian unstable. The downloadable builds strongly suggest that they won't work except on Ubuntu Breezy, so I didn't initially go to them. Unfortunately (or perhaps fortunately) the builds.osafoundation.org server appeared uncontactable and this is where a vast raft of stuff seems to want to be downloaded from.

So I went for the .tar.gz binary download that the Chandler folks currently build on Breezy and in spite of all of their caveats it seems to work just fine on Debian Sid.

Well, maybe "just fine" is exaggerating, but this is 0.7 alpha 03 release, after all:

  • Pressing 'Today' showed me the past week.
  • Trying to edit the date/time of an appointment made it rapidly and wierdly move into the past
  • It didn't appear likely that I would use this application even if it did work for me.
  • It seemed to be about as usable and stable as Evolution was pre version 1.0

That made me really sad. I had got Chandler to connect to the CalendarServer, even if I couldn't see that it was writing any appointments to it. The URLs used and so forth were enough of a clue bat to point out that I needed to connect to

Getting Evolution Working

It turns out to be pretty simple to get Evolution to work with the existing 'admin' user:

Adding a new user

OK, so lets add ourselves as a user...

Edit the file conf/repository-dev.xml and look for an element called '<accounts>' near the bottom of the file. You need to paste your user in something like this:

    <user>
      <uid>andrewmcmillan</uid>
      <pswd>password</pswd>
      <name>Andrew McMillan</name>
      <calendar>calendar</calendar>
    </user>

Then configure your new calendar with the "URL" set to "caldav://localhost:8008/calendars/users/andrewmcmillan/calendar/" (because we told CalendarServer to put the calendar into the 'calendar' folder. The "Username" should be set to whatever you chose, of course.

Where to from here?

Well, I think that I probably need to read the docs for this now :-)

I want to try and create a bunch of users, resources and the possiblity of other's sharing calendars. Creating resources looks easy enough from the repository-static.xml example, and I seem to have done that, but I think I need to get together with some of the other guys at work fiddling with this and see if we can do a shared installation.

After that, of course, I will be looking for some Debian packages of it all. Especially since it was this Debian ITP message that got me (re-)started on all of this. Good luck Guido!

Ah ha!

Interesting about the way to make it work with Evolution. I was trying to connect to the supplied Holidays calendar. I'll try the individual ones.

For the adding users, I use LDAP at home for all my user accounts, so I'll be investigating how to get CalendarServer to use the LDAP repository...

-- Andrew Ruthven

[D] [Digg] [FB] [R] [SU] [Tweet]