Help me understand contacts, calendar and caldav/cardav
I've been using Google for the last decade and am owly moving away from it.
I'm on Fastmail (FM) right now.
While I love their mailservice, the calendar and contacts integration is okey-ish, compared to Google.
Right now, my contacts are scattered across these services. New contacts that I add on my Android phone, are obviously not available on FM, and vice versa.
Therefore I'd like to setup a self hosted solution to manage contacts/calendars on a centralized place.
But right now, I can't seem to wrap my head around this topic. I often see caldav/cardav mentioned, but don't know how exactly they are related.
FYI: I'm a software developer, and I already host a bunch of services behind a reverse proxy.
Example scenarios:
Install a full-featured calendar app (mobile, desktop, web) -> connect to my service
Someone sends me a calendar invite to
FM -> sync to my service
I add a new contact on my Android phone -> sync to my service (make it visible in FM)
I add a new contact in FM -> sync to my service
I send a new calendar invite via FM -> sync to my service
Bonus I send a new calendar invite via App, and it get's sent via FM to the recepients.
So my question is what self-hosted solutions (besides Nextclowd) are out there that would allow me to accomplish that?
You just need to connect your devices to it. Unfortunately Google thinks PIM sync is not worthwhile to have on Android unless you use their service, so you'll need some extra apps. I used DAVx5 (it's free if you get it from F-Droid), Tasks.org and OneCalendar in the past for this.
This is what I do. DAVx5 works well as long as you're ok withiut realtime sync (you can pick how fast you want it). I would love to see Fastmail build the support I to their own app but that's not where we're at.
Caldav/cardav are the standard protocols used in this case. So every sane provider uses them. Davx5 creates a local account and interacts with the android apps (like google calendar) by pulling/pushing new events from and to the server respectively.
So, I can keep using google calendar, with my FM account instead of google 👍 noice!
Thx for the info, didn't know DAVx5 was free on f-droid.
why do you want to host another
That's the thing, that I don't really understand. I thought I could host a centralized caldav/cardav server, and link all the other services that have their own "implementation" of contacts/calendars. This way, if I move away from Fastmail, I could just link another mail provider, that offers their calendars/contacts.
My solution to this was a radicale docker container, with DAVx5 on f-droid. Very lightweight, just works without much configuration needed. I don't use my phone for email much, so I just use thunderbird for my email client
Yeah, I've heard about radicale. But the "merging" and sync still happens on the client side of things (Android). I was hoping for some kind of dockerized backend service that can bring together all the calendars. And the only thing I'd have to do is go into the backend, connect FM and google (or any other calendar) and link that (dockerized) service account on my phone.
Ah, I see. Looks like some other people in this thread gave you some good info, I'll have to keep this in mind if I ever need to change my approach. Happy to hear you got a good answer!
If I already have a docker environment set up, why not use the container? I use containers for most of my stuff, if I can. It makes many aspects of system management so much easier.