Thank you, Next! Moving from Google to NextCloud for my contacts & calendar.

I have been involved in a gradual process of degoogling (Wikipedia, Reddit) my digital life.

I considered moving off my contacts and calendar from Google to a locally self hosted Nextcloud instance, but finally settled on a free hosted and managed instance for reliability and peace of mind. This data is critical and must be always available, regardless of the power supply in my home server, for example.

NextCloud have partenered with many providers for what they call a Simple Sign Up procedure. You can sign up here, choosing whatever provider you deem the best for your private use.

I went ahead and signed up for a free hosted solution with a basic size limit which was quite generous for my needs. Then, I followed the NextCloud app (from Android Play Store) on what to do next.

The app prompted me to install DAVx5 (from the community-maintained F-Droid store) on my phone to be able to sync contacts (via the WebDAV protocol). For syncing calendar subscriptions (via the CalDAV protocol), I was prompted to install ICSx5. This is, once again, available on the F-Droid store.

You need to set these applications up because Android doesn’t natively support WebDAV and CalDAV protocols. They act as a bridge between your contacts and calendar apps, and the NextCloud server. They are open protocols, so it really is a bit of a shame that it doesn’t figure into Android by default.

Endpoint auto-detection failure

Trying to set up DAVx5 immediately threw up errors – it could not auto-detect the configuration from the server URL alone. A quick search showed me how using a specific URL as the endpoint often rectify this issue quickly:

https://{mynextcloudservice.com}/remote.php/dav/principals/users/{username}

Configuring DAVx5 with this URL and inputting my credentials got me up and running.

You need to keep whatever you want to sync “ticked” in the app. This caught me off-guard at first, so it’s worth a mention!

Verdict

Integration with Android and GNOME

Android and Nextcloud look to be in good harmony and I’m enjoying the experience. In the future, I would like to move away from my phone vendor’s default phone/contacts app as well as Google’s calendar app. Suggestions are welcome.

GNOME natively supports setting up a NextCloud account, and it was a breeze. Both the Calendar and Contacts app work out of the box.

Bugs that dampen the moving experience

This blog post would be dishonest if I didn’t mention that my experience hasn’t been entirely bug-free where day-to-day usage is concerned.

  • So many of my contacts’ where their phone numbers were specified as “London” and “Temporary Landline”, for example, as opposed to the usual “Home” and “Work”, all display as just “Other” or “Mobile” on GNOME’s contacts app. It’s not easy to decipher which “Other” I’m suppoesd to dial when looking through several numbers carrying the same tag. Simple Contacts handles this well just fine, so it could be limited to GNOME’s implementation of it.
  • Many modern contact apps also allow you to skip the birth year while inputting contact birthdays. Unfortunately, skipping the birth year does not seem to play well with NextCloud/CalDAV. While the date and month still show accurately, the year field does not. On this front, both GNOME’s Contacts app and Simple Contacts do not deliver.

I hope to see improvements in the future on these fronts to encourage more people to move to privacy-friendly solutions.

Last word

All in all, it is still handy being able to access my contacts and calendar quickly from the default GNOME apps on my desktop. I also don’t need to babysit this setup on my phone or on my laptop. It’s nice knowing my most personal details are just a little more private. I wouldn’t go back to the old ways!