Ask / Submit

CalDAV/CardDAV testing volunteers requested

asked 2017-03-20 05:39:57 +0200

chris.adams gravatar image

updated 2017-12-18 08:32:26 +0200

Hello! (new update: 18th December 2017)

Damien has done some more great work and has a variety of fixes for some issues in CalDAV.

Please find the updated caldav package at:

with sha1sum:

 $ sha1sum buteo-sync-plugin-caldav-0.1.44-1.armv7hl.rpm 
 990f9cb4adf6644818e2e3ad6fb4ddb70f632787  buteo-sync-plugin-caldav-0.1.44-1.armv7hl.rpm

with dependency libsailfishkeyprovider (if you don't already have this or a higher version installed):

which has sha1sum:

 $ sha1sum libsailfishkeyprovider-0.0.14-1.armv7hl.rpm 
 bfa12e8995e9c34df406b154a5d1a82c66838d50  libsailfishkeyprovider-0.0.14-1.armv7hl.rpm

Note that there is also an updated kcalcore (calendar backend API) package however it's too large to be uploaded to that OwnCloud instance. I've asked one of our Infra guys to help raise the upload limit so that this one can be provided also; I will update this post when that one becomes available.

If anyone is able to help test these packages, I would greatly appreciate it. A few people have sent me emails over the last week or so with issues they have found with the previous caldav package - please try again with this new package as it should resolve a couple of those issues.

Best regards,


Hello again! (new update: 10th October 2017)

Damien has been investigating a variety of issues in the CalDAV sync plugin, and has produced patches for quite a few things. Huge thanks to him for his hard work!

This new CalDAV plugin package should fix a variety of issues, notably some calendar duplication issues as well as the offline-availability issue, but before we ship it in a release, I'd like to ask volunteers to test the package thoroughly. As always, the usual caveats apply (this is pre-production code, which hasn't had full QA run on it, so please only test this against a test server or with data which you have securely backed up).

The package can be downloaded from (updated 8th November, valid until 30th November):

it is hosted on an insecure server, so please double check that the sha1sum matches as follows:

 $ sha1sum buteo-sync-plugin-caldav-0.1.43-1.armv7hl.rpm 
 629debd1d7221b3cd3c8bd2cbb8377013e1a0985  buteo-sync-plugin-caldav-0.1.43-1.armv7hl.rpm

You may also need to install this dependency package (updated 8th November, valid until 30th November):

which has the following sha1sum:

 $ sha1sum libsailfishkeyprovider-0.0.14-1.armv7hl.rpm 
 bfa12e8995e9c34df406b154a5d1a82c66838d50  libsailfishkeyprovider-0.0.14-1.armv7hl.rpm

These can be installed via "devel-su rpm -Uvh --force libsailfishkeyprovider-0.0.14-1.armv7hl.rpm buteo-sync-plugin-caldav-0.1.43-1.armv7hl.rpm" on the device.

As always, if you observe any problems, please collect sync logs via the instructions from and email me or contact me on IRC :-)

Best regards,


older post:


New edit: 29 June 2017

We're asking for volunteers to help test again. I think I have resolved the calendar duplication issue now, but need many testers to try, to make sure.

The CalDAV plugin is the main one which has been updated, the other packages are provided also but haven't changed as far as I can remember. Details follow. Please check the sha1sum as shown, to be sure that the packages haven't been tampered with, as the server is not secure.

The CalDAV plugin:
$ sha1sum buteo-sync-plugin-caldav-0.1.41-1.armv7hl.rpm 
8f323adc7c2b5238001a3b54c0e5c1c37c73e8b5  buteo-sync-plugin-caldav-0.1.41-1.armv7hl.rpm

The CardDAV plugin:
$ sha1sum buteo-sync-plugin-carddav-0.0.28-1.armv7hl.rpm 
9e40ac235736b767598e16d3bf6211b59a2a181d  buteo-sync-plugin-carddav-0.0.28-1.armv7hl.rpm

And the libsailfishkeyprovider package which is required by both of the above packages:
$ sha1sum libsailfishkeyprovider-0.0.14-1.armv7hl.rpm 
a567814c14defd5a7555862aed1ee978cb1d3ba5  libsailfishkeyprovider-0.0.14-1.armv7hl.rpm

If you still see calendar duplication, please send me an email with a sync log collected as shown in - thanks!

Best regards, Chris.

older edit -----------------------

Hi Everyone,

Once again, if anyone is able to provide help testing it would be appreciated!

The caldav plugin can be found at:


 $ sha1sum buteo-sync-plugin-caldav-0.1.41-1.armv7hl.rpm 
 85e42249228aec2642d09749f271871cbed50ff4  buteo-sync-plugin-caldav-0.1.41-1.armv7hl.rpm

and the carddav plugin can be found at:


 $ sha1sum buteo-sync-plugin-carddav-0.0.27-1.armv7hl.rpm 
 9177bb9c79f86fd10a139de1148670956a263c1b  buteo-sync-plugin-carddav-0.0.27-1.armv7hl.rpm

Also they have a dependency, libsailfishkeyprovider, which is available from:


 $ sha1sum libsailfishkeyprovider-0.0.14-1.armv7hl.rpm 
 a567814c14defd5a7555862aed1ee978cb1d3ba5  libsailfishkeyprovider-0.0.14-1.armv7hl.rpm

Please do check the sha1sum matches as the server is not secure.

Once you have downloaded and verified the sha1sum is correct, please scp them to the device, and install the plugins via:

 rpm -Uvh --force *rpm

and then reboot the device.

Test that synchronisation works for you, and if you encounter any issues, please collect a sync log following the instructions from and send the log to chris dot adams at jolla dot com so that I can investigate.



---- original post below:


During the most recent CalDAV/CardDAV Contributors Meeting (see summary of meeting at we decided that one particular patch to our CalDAV plugin might need extra testing due to the potential for regressions. It would be great if some members of the community would be willing to help test a package with this patch included (requires developer-mode), to help us identify any regressions (note that this particular patch is currently aimed for the 2.1.1 release, so we have time to fix issues which are noted).

Some important points:

1) The CalDAV and CardDAV plugins are still considered experimental; this particular package should be considered very much experimental and with that in mind, should only be tested by experienced users with non-critical data / accounts.

2) Please take backups (both of local device data and of server data) prior to testing, especially if you are using your own server or account for the testing.

3) If you are using one of the test accounts listed here, please ensure that no personal information is upsynced (e.g. please use fake calendar events etc to avoid leaking private information to those public servers).

4) Any issues found can be reported directly to me via email at chris dot adams at jolla dot com or via the Mer Project bugtracker at

I have built an rpm package with the patch for MER#1646 included, and it is available for download for the next couple of weeks from here

Please note that this is hosted on an insecure server, so before installing it on your device, please check that the sha1sum of the rpm file matches the following:

$ sha1sum buteo-sync-plugin-caldav-0.1.40-1.armv7hl.rpm 
98861dc509ef0d3ce791d4eb91ceb27b7dfbaa45  buteo-sync-plugin-caldav-0.1.40-1.armv7hl.rpm

Alternatively, build the caldav plugin package yourself from git, by checking out master and then cherry-picking the change from this MR on top.

EDIT: I had forgotten that this now has a new dependency, so please also install the updated libsailfishkeyprovider package from here or build it from git here

$ sha1sum libsailfishkeyprovider-0.0.14-1.armv7hl.rpm 
0e07f7625a2e8afd093d951b85270e9a02aa7c99  libsailfishkeyprovider-0.0.14-1.armv7hl.rpm

Once you have the rpms, scp them to your device and install them via rpm -Uvh --force buteo-sync-plugin-caldav-0.1.40-1.armv7hl.rpm libsailfishkeyprovider-0.0.14-1.armv7hl.rpm and then reboot the device.

Sync logs of failing cases can be be gathered following the instructions from here - thanks.

I did a basic smoke test and verified that very basic local and remote changes are synchronised between the device and the remote server successfully, however I only tested a couple of very basic changes. Any help to perform more manual testing would be greatly appreciated!

Best regards,


edit retag flag offensive close delete


Fails to sync or access the local database when connecting to my Nextcloud 11.0.2 instance (the default in works). Sent an email about it.

Manatus ( 2017-03-21 16:50:04 +0200 )edit

Oops - I forgot that it has a new dependency on an updated libsailfishkeyprovider. I've edited my original post to include a download link to that one also, now. Sorry for the confusion!

chris.adams ( 2017-03-22 04:47:29 +0200 )edit
  1. installation without issues
  2. caldav was changed to "manually", set back to "15 min"
  3. calendar app shows caldav calendar (did not since, yay!
  4. Sent some meetings from outlook, recieved them on the phone, imported them into the calendar
  5. all meetings where automatically synced to my caldav calendar.
Moo-Crumpus ( 2017-03-22 15:30:04 +0200 )edit

What is about the new SailfishOS EA ? They also updated the package to fix the CalDav issues, but the version is lower than yours. Is it the same update, but with different version-numbers?

ExPLIT ( 2017-03-24 02:13:43 +0200 )edit

@ExPLIT: It shouldn't. Taking the presented information from chris.adams here into account, that doesn't make sense :) therefore uses the old CalDav implementation and received extra fixes in, 2.1.1.x will probably contain the here mentioned new boteo-plugin.

hoschi ( 2017-03-24 08:02:53 +0200 )edit

9 Answers

Sort by » oldest newest most voted

answered 2017-12-07 23:08:29 +0200

schmittlauch gravatar image

Good news so far: No more calendar duplication with the testing packages on with Baikal.

edit flag offensive delete publish link more


Same here with nextcloud 12.0.4 :-)

poddl ( 2017-12-08 00:36:02 +0200 )edit

however my XperiaX on does not sync google calendars at all, but my Aquafish on does the same quite well. (XperiaX just reads events at account creation then stops)

danfin ( 2017-12-08 08:41:26 +0200 )edit

Great to ear that this bug seems to be old memory now.

@danfin, the code to sync Google calendar is different from the CalDAV code. It is also open-source so any volunteer can try to fix the issue and MRs are welcomed. I'm not using Google calendar myself, I cannot help on this one, sorry.

Damien Caliste ( 2017-12-08 11:09:33 +0200 )edit

thank you @Damien Caliste - I thought the Google speaks pretty much CalDAV / CardDAV and it might even be possible eventually to connect to Google via CalDAV/CardDAV. However, not being a Computer specialist, I am far from volunteering in this field.

danfin ( 2017-12-08 11:21:57 +0200 )edit

answered 2018-01-03 00:46:51 +0200

jbruggem gravatar image

Hi chris,

I think I found a small bug in the carddav lib. Although small, the bug makes this lib unusable for me.

See : (with my comment below).

I believe there's a double slash added that breaks the URL for fastmail's carddav server.

Indeed, in my account config (.config/libaccounts-glib/accounts.db), the URL does not end with a slash; but in the PUT URL it does.

My guess is that in carddav.cpp#L1092 there is an extra + "/" which is unneeded, since addressbookUrl is apparently guaranteed to end with a /.

edit flag offensive delete publish link more


For reference, there's an issue tracked on fastmail's carddav server : (no guarantee it will be solved, though. They might consider it's not their problem).

jbruggem ( 2018-01-05 10:06:08 +0200 )edit

Thanks, I will look into it.

chris.adams ( 2018-01-18 04:09:50 +0200 )edit

answered 2017-12-10 00:51:23 +0200

birefringence gravatar image

While I no longer see duplicated calendars, I have a problem with recurring events with exceptions not working correctly that either lead to a hanging sync draining the battery or even deleting the event on the server. I've sent a detailed report to @chris.adams

edit flag offensive delete publish link more


I have detected issues with exceptions also. I've submitted a patch, but Chris hadn't time yet to propose a public test package.

Damien Caliste ( 2017-12-10 11:41:35 +0200 )edit

New test packages are available. Please let me know if you encounter any issues with them!

chris.adams ( 2017-12-19 03:57:20 +0200 )edit

Great! Thanks a lot to @chris.adams and @Damien Caliste!

The recurring event with exceptions does not seem to get deleted any longer, but I also don't see it at all on the Sailfish device. Before I create new logs, should I wait for the missing kcalcore package?

birefringence ( 2017-12-19 23:35:13 +0200 )edit

Hello, for the hanging issue, I've found a problem when locally deleting the occurence of a recurring event without having remote modifications of the base event at the same time.. This has been fixed yesterday and will be in packages numbered 0.1.46.

Damien Caliste ( 2017-12-20 09:28:43 +0200 )edit

Minor amend to the previous comment, the buggy code path is only for deletion of a persistent exception, not for any occurence of a recurring event. For instance, you modify an occurence of a recuuring event, time location, date, whatever. This will create a persistent exception. The later-on deletion of this exception will make the plugin hang and don't do any modification, local or remote. This has been corrected yesterday.

Damien Caliste ( 2017-12-20 10:09:14 +0200 )edit

answered 2018-01-07 22:24:12 +0200

twotty gravatar image

Hello, I have try the to last version 0.1.43-1 and 0.1.44-1. At the beging all was good. But from 1 moth, caldav-client make hight cpu usage one my XperiaX (check by command 'top' on shell). I need to kill it. If I don't check, battery drain down and the phone is hot. I use 3 accounts witch caldav on personal Baikail server. If I can check something for help, anybody can give me the way.

edit flag offensive delete publish link more



Did you locally delete a persistant exception, I mean, you modified a single occurrence of a recurring event (like the time, or the lication). And then, you deleted this single occurrence.

I correced a bug of high cpu usage based on this before Xmas. The fix is not public yet.

Damien Caliste ( 2018-01-07 22:48:54 +0200 )edit

answered 2017-08-16 19:12:42 +0200

ExPLIT gravatar image

Any update here guys?

I still have some problems with doubled calenders, even after EA I would like to help and test beta releases of your plugin...

edit flag offensive delete publish link more



Update is here, please test the new pre-release packages linked in the original post if you can - that would be greatly appreciated!

chris.adams ( 2017-10-11 04:09:47 +0200 )edit

@chris.adams No problems yet with baïkal backend. Survived one 3 hour train travel at least.

ljo ( 2017-10-11 18:23:24 +0200 )edit

Hi! I run the Fairphone2 port, which is at version As it's not really current, are these packages worth trying to install?

I have had severe calendar duplication over the years.

(Also talked about some other weirdness on IRC, but that was mostly due to not understanding how adamant the CalDAV implementation is about syncing only half a year's worth of data. Sailfish did not appreciate me ramming the ICS files in there.)

mjtorn ( 2017-10-11 20:33:45 +0200 )edit

It should work, the caldav plugin is almost entirely self contained with few external dependencies. In regards to your latter point, Damien has an MR (can't remember if I merged it already or not) which will allow you to (manually, via developer mode shell) change the sync window for caldav profiles. We will add an option to control it from the UI in the future (but no ETA on that, it's low priority for us honestly).

chris.adams ( 2017-10-25 04:35:21 +0200 )edit

@chris.adams I seem to have forgotten to follow this question, as I was wondering about the lack of responses, and now the download link is dead :(

I also bought an Xperia X and would be willing to test on it, as it's a significantly newer version.

But if this is already handled and in the release queue then I'll stand down.

Thanks and apologies!

mjtorn ( 2017-10-30 13:28:24 +0200 )edit

answered 2017-11-13 19:03:36 +0200

TomC gravatar image

updated 2017-11-13 19:04:35 +0200

Different behaviour noticed with Caldav account after

edit flag offensive delete publish link more

answered 2017-12-21 20:36:02 +0200

DarkTuring gravatar image

In SFOS browser i cant even select the HTTP please wrap or simplify:

Select Copy Fail

edit flag offensive delete publish link more


I tried this plugin with my Open Xchange server. It offers to sync several calendars and to-do's. In Sailfish Calendar however, I get only 'Calendar', 'to-do's' and 'Birthdays'. Adding more calendars in OpenXchange will change nothing: The plugin shows the same calendars it did when connecting first time, and Sailfish Calendar will show just 'Calendar'. Are we restricted to just one single calendar here? Are we syncing to do's but cannot handle them? (Google sync will not show to-do's and will sync any calendar added on any side of the system)

danfin ( 2017-12-30 10:31:27 +0200 )edit

Currently, you can only select the calendars to sync when creating the account. This is a known issue. If you add a new calendar server side, you have to recreate the account on the device, unfortunately.

chris.adams ( 2018-01-18 04:07:18 +0200 )edit

any timeline on that issue? As it works well on Googlesync which I understand is a spinoff from CalDAV, I guess it should be doable on CalDAV aswell.

danfin ( 2018-01-20 13:58:26 +0200 )edit

answered 2018-01-03 06:12:18 +0200

Picanha gravatar image

Hello Chris,

thanks a lot for your great work!

I also figured out some weird behavior when syncing the contacts from phone address book via CardDAV.

You can see it here:

Can you reproduce this error?

edit flag offensive delete publish link more


I will look into this, thanks.

chris.adams ( 2018-01-18 04:07:36 +0200 )edit

answered 2018-01-04 01:02:02 +0200

SaimenSays gravatar image

updated 2018-01-04 01:28:39 +0200

There were three duplicate calenders, for each of the synced calendars in my CalDav account, so I have 9 calenders visible. To fix this issue, I installed latest update from 18th December on SailfishX running with

  1. When I disable the CalDav account, all the calendars are still visible in Calendar app. This bug is still present in same way as discribed for Disabled email account is still receiving.

  2. Even disabling individual calenders in CalDav account, the corresponding calendar(s) are still visible in calendar app.

  3. Why are the duplicates still there after installing the new packages (Even after restart). How can I get rid of them? Do I really need to recreate the account?

edit flag offensive delete publish link more


I always recreate the account, especially after updating caldav version.

William ( 2018-01-04 14:23:48 +0200 )edit

To get rid of those ghost files, do the following:

  1. Delete your whole CalDAV/CardDAV-account
  2. Run this script as root via sh in terminal:


    CONTACTDIR=/home/nemo/.local/share/system/Contacts/qtcontacts-sqlite/ PRIVCALDIR=/home/nemo/.local/share/system/privileged/Calendar/mkcal/ PRIVCONDIR=/home/nemo/.local/share/system/privileged/Contacts/qtcontacts-sqlite/

    echo "Deleting previous CardDAV and CalDAV databases in /Contacts..."

    rm -f $CONTDIR/contacts.db rm -f $CONTDIR/contacts.db-shm rm -f $CONTDIR/contacts.db-wal

    echo "Deleting previous CalDAV databases in /privileged..."

    rm -f $PRIVCALDIR/db rm -f $PRIVCALDIR/db.changed

    echo "Deleting previous CardDAV databases in /privileged..."

    rm -f $PRIVCONDIR/calendar.stamp rm -f $PRIVCONDIR/contacts.db rm -f $PRIVCONDIR/contacts.db-shm rm -f $PRIVCONDIR/contacts.db-wal

    echo "************" echo "LOCAL CONTACT/CALENDAR-DATABASES CLEARED" echo "************"

  3. In the end, recreate your CalDAV/CardDAV-account again and everything works fine!

Picanha ( 2018-01-04 18:32:43 +0200 )edit

@Picanha as far as I can see your sript doesn't remove notifications for calendar events. Last time I deleted my calendar database it took ages until all notifications expired. It was quite annoying.

Do you hava a clue how to deactivate the stale notifications ?

jollajo ( 2018-01-06 12:25:04 +0200 )edit

The event notifications are probably stored in /home/nemo/.timed/

If there's some bug in the way those are handled (e.g., not cleaned up properly on account deletion) we should fix that. Any help in figuring out a simple repro case would be appreciated.

chris.adams ( 2018-01-18 04:09:27 +0200 )edit
Login/Signup to Answer

Question tools



Asked: 2017-03-20 05:39:57 +0200

Seen: 3,769 times

Last updated: Jan 07