We have moved to a new Sailfish OS Forum. Please start new discussions there.

Baikal (CalDAV + CardDAV server)

asked 2014-01-29 14:35:27 +0200

chappi gravatar image

updated 2014-02-13 15:22:32 +0200

eric gravatar image

I would like to have CalDAV + CardDAV support for the Baikal server (http://baikal-server.com/).

And - as a question - does someone use Baikal? Would be interested to hear how it works. It looks like a great alternative to cloud based services.

edit retag flag offensive close delete


At the moment as of Jolla update 1.0.38 there is no generic CardDAV/CalDAV sync functionality.

Until Jolla officially supports it, there's a workaround by using SyncEvolution. It may also work with Baikal by using the SyncEvolition WebDAV template, give it a try: http://wied.it/blog/caldav-and-carddav-sync-with-jolla-phone-syncevolution-and-zimbra-zcs-owncloud-and-ssl.html

bwiedmann ( 2014-02-13 20:45:01 +0200 )edit

Thanks for the comment. I also found this post where someone mentions that SyncEvolution works like a charm with baikal-server.

chappi ( 2014-02-14 21:16:56 +0200 )edit

Syncing CalDAV with Baikal on my Lighttpd server works fine for me. When starting a manual sync connections to the following path show up in my access log:


However when configuring the new CardDAV syncing feature (since nothing shows up in the access log of my server and I cannot get my contacts to sync. I have configured the CardDAV account on my Jolla Phone, by switching off CalDAV and specifying the server name and the server path separately - just as I did for the CalDAV account.

Did anyone get CardDAV syncing with Baikal to work?

Hanno ( 2014-12-24 00:21:49 +0200 )edit

Hello guys,

caldav is working for me, but unfortunately card.dav isn't. I'm using Baikal 0.2.7 and Sailfish OS

I used baikal for months on android and thunderbird and there was never an issue with that. I was a little bit surprised that it didn't worked. I thought Card/Cal is fully supported by sailfish OS now...?

alvarex ( 2015-02-23 23:17:25 +0200 )edit

Hopefully it will be fully supported soon. Owncloud cal/carddav integration is really important for me

piratenpanda ( 2015-02-23 23:26:16 +0200 )edit

2 Answers

Sort by » oldest newest most voted

answered 2014-01-29 14:55:00 +0200

CalDAV and CardDAV support will be coming in the future (CalDAV sooner, CardDAV has lower priority).

Both are standard protocols, so they should work with Baikal.

edit flag offensive delete publish link more



With update CalDav works for me with Baikal Server, maybe even CardDav - I have still to figure out how. No, it does not work yet, my comment was wrong. But I am still investigating.

hardcodes.de ( 2014-06-10 13:11:49 +0200 )edit

With I can connect to a Baikal Server and the appropriate Calender name ("Default calendar") is found and shown. But the synchronisation doesn't work (not in manual mode and not with 15 min. time setting). Synchronisation from Thunderbird to the same Baikal server works fine, so the Server is doing it's job. Where can I see the synchronisation log and event log?

thomas ( 2014-06-12 18:33:15 +0200 )edit

Could you please post your used URL. So far I tried the one I use with success on OSX but the calendar name does not show up. For iOS I need another one, maybe there are even more ways...

hardcodes.de ( 2014-06-12 23:06:58 +0200 )edit

The problem is, that it is not possible to view or edit the path anymore, therefore I cannot exactly see what I entered there. But I think I split the path up in the following way on the two entries: Server: http://192.168.1.xxx/ Path: baikal/cal.php/calendars/[username]/[cal name]

thomas ( 2014-06-13 00:11:40 +0200 )edit

You can look at a part of the settings with ag-tool list-accounts and then ag-tool list-settings <number> (just for future reference). Where do they store the URL part?

hardcodes.de ( 2014-06-14 13:50:40 +0200 )edit

answered 2015-10-01 21:48:52 +0200

Erwin gravatar image

updated 2015-10-01 21:49:44 +0200

Changing the paths on the Jolla is not possible, is my experience. I am using both CalDAV and CardDAV with my own Baïkal server, and I have decided to set up two accounts on the Jolla: one for CalDAV and one for CardDAV.

My own server running Baïkal can be reached on:

CalDAV: https://my.server.com:9999/baikal/html/cal.php/calendars/erwin/default/

CardDAV: https://my.server.com:9999/baikal/html/card.php/addressbooks/erwin/default/

The server paths are to some extent configurable as part of Baïkal setup. With more advanced web server settings, the paths are of course fully configurable.

On the Jolla, the path should be entered in two fields, server name and relative path name. This is how I have done it, but I expect that some other approaches are also possible:

Server name: https://my.server.com:9999/

Path name for CalDAV: /baikal/html/cal.php/calendars/erwin/default/

Path name for CardDAV: /baikal/html/card.php/addressbooks/erwin/default/

Note the usage of slashes before and after the path name. It seems like the Jolla can deal with a server name ending with a slash and the path name starting. Again: I believe some small variations will also work.

After setting up my own Baïkal server it has worked flawlessly. Faster that with Google which I used previously.

I have configured a laptop (Evolution) to sync with the Baïkal server (CalDAV and CardDAV) and that is why I know the Baïkal server is working well.

Configuration of the accounts on the Jolla has caused me headaches, first of all because the entry screens are not really user friendly. They do not allow many corrections after first entering and validating the address data. That is why I have started to use two separate accounts (one for CalDAV and one for CardDAV, but pointing to the same Baïkal server).

Then, the sync-process on the Jolla is not reliable. Only after some time one notices that the CalDAV or CardDAV account has been set up correctly. Manual sync does not seem to work (looking at the access logs on the Baïkal server).

Finally, the calendar app on the Jolla is horrible in combination with CalDAV. After correctly setting up of the CalDAV account, I do not see the specific calendar listed under "manage calendars". With some serious tweaks in developer mode (see other postings), I managed to make it work again. But, after a few weeks, suddenly the sync process does not work anymore, the Baïkal calendar has disappeared from "manage calendars" and my existing calendar entries have become orphans.

I have invested time in setting up a reliable Baïkal server to get rid of all trouble I had before. Because of Evolution, I am pretty confident it is working correctly. That makes painfully clear that the cause of all these problems with CalDAV and CardDAV are in Sailfish / Jolla.

edit flag offensive delete publish link more


If you can provide me with logs of the sync, I can investigate. Even better, if you can provide me a test account on a Baikal server, then I will be able to fix things much faster.

To get logs, follow these steps:

1) make sure that /etc/systemd/journald.conf has RateLimitBurst=5000 and RateLimitInterval=10s, if you had to change these then reboot the device.

2) restart the sync daemon with extra logging enabled:

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

3) leave that running, and then open a new terminal to collect carddav logs:

 devel-su journalctl -af | grep carddav

4) and another to collect caldav logs:

 devel-su journalctl -af | grep caldav

5) then trigger sync via Settings | Accounts -> Longpress Baikal account -> Sync.

Once the sync has completed, please send the contents of the two journalctl terminals to chris dot adams at jolla dot com (after redacting any personal information from those logs).

Thanks, Chris.

chris.adams ( 2015-10-07 06:47:36 +0200 )edit

Chris - thanks.

I decided not to start tweaking immediately because the sync process seemed to be working ok since early October. Changes made on the phone or on another client were synced and arrived on all other clients after a little time.

Then, problems again today. I rebooted the Jolla for another reason to discover that the calendar were not visible on the Jolla anymore and the name of the calendar not part of the list of under "manage calendars" anymore. The same problem I had before.

The journald.conf settings were already comparable (RateLimitBurst=3000, RateLimitInterval=10s), so I started to grep the caldav results with raised log levels. Then, the sync:

Oct 13 14:54:20 Jolla caldav-client[3386]: [D] Report::processResponse:155 - Process REPORT response for server path "/baikal/html/cal.php/calendars/userid/default/" 
Oct 13 14:54:20 Jolla caldav-client[3386]: [C] Request::finishedWithError:100 - "REPORT" request failed. 503 "Network request failed with QNetworkReply::NetworkError: 1"

Clearly a network error, even though the phone had connectivity at that moment. I was at home, and had "data", "bluetooth" and "wlan" enabled. I decided to disable wlan, after which the phone reported "connected". Syncing the calendar caused a lot of logging data, but all calendar entries are back in the Jolla's calendar.

Not sure what to think of this. There could be problematic wlan settings (on my home network or in the Jolla) that cause issues. Strange is that this leads to calendar entries disappearing.

Erwin ( 2015-10-13 16:26:35 +0200 )edit

Thank you SO MUCH Erwin, after more than a year I managed to make CalDAV + Baïkal work, thanks to your advice!

Even better, I use multiple calendars under the same Baïkal user and Sailfish managed to pull them all with no issues. What I did was to create the calendars via Baïkal's web interface and use the same url you provided, but without the default calendar name in the path (/default). So, instead of: /baikal/html/cal.php/calendars/erwin/default/

This: /baikal/html/cal.php/calendars/erwin/

And all three calendars popped up. Awesome. FYI, I'm running the very latest versions of both Baïkal (0.4.4, now acquired by SabreDAV) and Sailfish(

Thanks again.

spidernik84 ( 2016-05-10 20:27:44 +0200 )edit

this still works with SFOS and Baikal 0.4.6

server: https://your.server.xy/

path for cardDAV: /baikal/html/dav.php/addressbooks/(username)/

path for calDAV: /baikal/html/dav.php/calendars/(username)/

on larger databases it takes a while to show up in calendar and contacts, so be patient

Moreover keep an eye on Baikal server, as latest v0.4.6. is no longer working with up to date php 7.2. There are two patches available, one that simply stops the error message on the admin page: https://blog.cscholz.io/baikal-php7/

and one that patches the relevant source files: https://github.com/sabre-io/Baikal/commit/519237b55339d524f109d8797776e158add675a9

cg ( 2019-02-08 09:44:55 +0200 )edit
Login/Signup to Answer

Question tools



Asked: 2014-01-29 14:35:27 +0200

Seen: 4,954 times

Last updated: Oct 01 '15