Using syncthing to sync contacts and calendar

Hey there!

I’ve moved away from google for my contacts and calendar. Now I use radicale as my sync server. Because of dynamic IP from my ISP I ran into multiple ussues like server unavailable at times of need and possibly lost contacts on my Android phone.

I’d like to try to use syncthing to do the syncing (like it already does for my photos). With its decentralized structure a sync node can be offline or temporarily unavailable and it still wouldn’t matter.

I can’t seem to find any apps on android that can automatically import/export changes in the calendar or in the contacts to a specified file. Or even specify the file in question.

My second place to use the contacts/calendar is Thunderbird under linux. Manual import/export just isn’t as just having a server connected using CalDAV and CardDAV.

Has anyone tried something like that or can give me some pointers on where to start?

I use Syncthing in combination with ICSDroid.

Thanks, I didn’t know that one. But as far es I can see this only supports reading from the ics file, not writing to it (two-way-sync)

I’ve found another promising app: Calendar Import/Export. But unfortunately there is no automatic scheduled import/export

https://f-droid.org/repository/browse/?fdid=org.sufficientlysecure.ical

Edit: apparently Thunderbird/Sunbird supports reading and writing from/to local ics-files https://wiki.mozilla.org/Calendar:FAQ#How_do_I_save_my_calendar_file_on_a_local.2Fnetwork_drive

This is interesting; I’ve been trying to do the same thing. I have successfully integrated Todos and Notes with Syncthing, using todo.txt and Simpletask Cloudless for Todos and just a folder structure with Markdown files and Writer Plus for memos/notes.

I found the same apps you did for calendar synchronizing, but unfortunately, neither lets you add events on the mobile device: they only sync with a calendar file (I use KDE’s KOrganizer). Since I can’t add events on the device, I’m sort of stuck with Google Calendar at the moment. Have you found a solution for contacts?

At least I’ve been able to get my Todos out of Google Tasks and my notes out of Evernote.

1 Like

Nice apps for todos, I like the markdown support!

With Calendar I’m using radicale on my own server. Pretty easy to setup. But centralized. Other than that I have found nothing new

Contacts looks even more grim. I did’t find anything!

In both cases ics for calendar and vcf for contacts there is no syncing information included. For syncing protocols Caldav and carddav are used. Those somehow handoe deletion creation etc.

I think a nice solution would be a folderstructure with one file for each contact and then syncthing can sync deletions creations and updates of the files. But I haven’t found software that can handle this

@NeroBurner, can you manage events on the device using a Radicale server?

Since this is turning into a general “contacts and calendar recommendations” thread, I’d like to recommend vdirsyncer for this use case.

I think of it as adapting the idea of Maildirs to calendars and contacts data, in the form of “vdirs”. On it’s own, vdirsyncer can’t do simultaneous multi-way sync. That is, it can only synchronize two nodes at once. But, you could have a central CalDAV / CardDAV server, and use vdirsyncer to synchronize to it. This is similar to using mbsync / isync or offlineimap for mail.

You can also synchronize directly to another vdirsyncer machine that has the data stored in “vdirs”, without a *DAV server.

It works well and has a very attentive development community.

The app ICalSync2 syncs (automatically import/export) the events in the ics file. It could be used in conjunction with thunderbird/sunbird. I’m doing so, but with some issues: sometimes when an entry is added in android it doubles the entry; in other ocasions thunderbird doesn’t update deleted events on android. Link to the app: https://khaos-coders.org/component/k2/item/2-icalsync2

For direct synchronization between Thunderbird/Lightning and Android on your local network, you could also try GeneralSync, which is free (as in beer) during the open beta that started yesterday. As its main intention is to provide an easy and safe decentral sync for end users, it does not open ports by default, so you need to manually set up NAT and hostnames if you wish to use it via Internet.

Disclaimer: I’m the developer of GeneralSync (and only posting as this thread seems to be more about Thunderbird / Android calendar sync than about Syncthing).

@luisfsr that kind of app is what I was looking for. Unfortunately the app is not actively developed anymore. The source is available to download for anyone to pick up

@generalsync I’ve been bitten by free beta and when popular essentially closing down the free tier (thinking about BTSync). Furthermore how can I keep this app up2date. Neither available on GPlay nor FDroid

1 Like

So I hope I won’t see another post related to this, as it’s all starting to sound like marketing.

6 Likes

There is a “User Stories” category in the Forum where stuff like this belongs. Not in the “General” section, IMO.

Personally, I enjoy reading how others are using Syncthing. Sometimes we can discover a new idea that is useful.

As for the marketing stuff - well considering that Syncthing is FOSS (donations appreciated, but not mandatory) - I find it strange seeing “for profit” startups coming here for a free ride on this community.

1 Like

Recategorised. I see the post has now been withdrawn, but I thought it was OK under the circumstances as it was on topic. With the caveat as Audrius says that enough is enough. :slight_smile:

(The forum also adds rel="nofollow" to user links, so there is no spammish SEO karma gain from posting here apart from the people who happen to see it live)

3 Likes

I have tried different sync tools on multiple platforms which sucked (python, java etc). And syncthing is just plug and play with batteries included and works almost everywhere. And as calmh mentions, others trying to benefit from the community around it.

All your time and effort is highly appreciated!

Being observed is strange… But that’s all non programmers can do: create ways to benefit from your efforts and help with donations. Thanks @calmh! Your application is really a gift for the community! Going back to the subject “syncing calendars and contacts with syncthing”… Something new about the subject?

1 Like

Syncthing syncs files. If your things are available as files, they can be synced. If not, there are no plans to support it.

2 Likes

There’s DecSyncCC. Works perfectly, but unfortunately not available on Google Play, only F-Droid (Raised an issue about that).

Contacts and calendar should use CalDav and CardDav sync tools, probably somebody wrote a tool to dump you local calendar and contacts and sync the backup with syncthing. My advice is to get a central point of your calendar and contacts (i trust google). But you can use NextCloud to host it yourself and run CalDav/CardDav with WebGUI.