CardDav: Ignores settings

asked 2015-06-14 09:49:26 +0300

WhyNotHugo gravatar image

Setting up CardDav is pretty non-trivial. Even after I got it "working", it just dumps contacts into a new address book and completely disregards the settings I've provided:

The real path to my collection is

The only way to make Sailfish actually try to use a URL that remotely matches something acceptable to the server is with:

 path: /hugo/contacts.vcf

Note that I guessed this settings by inspecting what URL the phone was trying to reach. Any other combination (even the sanest-looking ones) will contact an invalid URL, and the server rejects it. Even with these settings, Sailfish just decided to upload all my contacts to

Note that there is no mention of this addressbook.vcf anywhere.

As a "workaround", I ended up re-configuring all my other devices to use this new endpoint that Sailfish has chosen for me, but that's really not sane (and I only found it by inspecting the server carefully).

If anybody is willing to debug this further, I can provide caldav and carddav accounts on my server.

edit retag flag offensive close delete


Yes please, send the test account details to chris dot adams at jolla dot com.

If you wish to debug it yourself, you can do the following:

$ systemctl --user stop msyncd
$ killall msyncd
$ MSYNCD_LOGGING_LEVEL=8 devel-su -p msyncd

then in a separate terminal, do:

$ devel-su journalctl -af

then trigger sync with your CardDAV account. You should see a large amount of logging in the journalctl terminal (you may need to first modify /etc/systemd/journald.conf and set RateLimitBurst=5000 and RateLimitInterval=10s to avoid logs being truncated).

Some quick questions:

1) What version of SailfishOS are you using? What version of the carddav sync plugin are you using (can check with devel-su -p pkcon get-details buteo-sync-plugin-carddav)

2) Do you have .well-known endpoint redirects set up for your server? What paths do they point to?

Thanks, Chris.

chris.adams ( 2015-06-16 06:56:02 +0300 )edit