It's time for me to say good bye to something I really like, from the idea behind and the features it offers down the the interface (more or less): OwnCloud. But it just makes more hazzle then I get back from it.
I had massive problems with the updating process back in the OC5 or OC6 days (I really cant remember as it got much better). But the update towards the latest stable just shot down my personal installation into uselessness. Contacts and calendars entries, which are the main feature of OC I used, got lost from the (SQLite) database. Half of the few files vanished from the web-interface, just to return some days later.
So I tried the process again from the backup. With the same result. Tried to convert the SQLite DB to a MySQL DB--maybe the database got too big for a small instance, even though it's a single user instance?--but no luck with that either. Same rate of success with a fresh installation and import of the existing data.
In the end, after three weekends work, I had an OwnCloud that looked functional, but it just throwed out errors whenever a new entry was added to the calendars or contacts. So I exported them to ics and vcf files and set out looking for an alternative.
What I settled with is Radicale
A SIMPLE CALENDAR AND CONTACT SERVER
Presentation The Radicale Project is a complete CalDAV (calendar) and CardDAV (contact) server solution.
Calendars and address books are available for both local and remote access, possibly limited through authentication policies. They can be viewed and edited by calendar and contact clients on mobile phones or computers
which is a python application, running on my $HOME server, only accessible via the local network, that serves CardDAV and CaöDAV and let me sync my contacts and calendar entries for a month now without any problems between my phone and the desktop. It is possible to make it use a nice URL with Apache, but I've opted to don't use that and stick with funny port numbers behind the local IP address of the server.
On the desktop I use khal and khard, two well crafted CLI applications to access the data. Stored on the desktop and synced using vdirsyncer with the Radicale server. On the Jolla I use SyncEvolution which is available in the OpenRepos. I should have started using khal and khard long time ago, and not stick with the GUI calendars.
Configuration of Radicale, vdirsyncer, khal and khard is a bit tricky, but it was a rather successful afternoon after which it worked. For access management Radicale offers various alternatives one can choose from; I've selected good old htpasswd granting every user only access to their own contacts and calendar data.
Example configuration files for vdirsync, khal and khard can be found in the repositories of the projects: vdirsyncer, khal and khard. They are rather straight forward for a configuration like I use, with one set of contacts and one calendar. The tricky part was to identify the locations the four parts of the chain listen to each other.
One of the more time consuming tasks that afternoon was to get my old contact information into the new chain. Until I realized that all I need to do was split the backup vcf file from OwnCloud, which contains all contacts, into one vcf file for each contact. Luckily I found a little python script at www.zedt.eu for that task.
But wait what about WebDAV? Putting files into the cloud. That was actually the most easy task to find an alternative for OwnCloud: the red#matrix has WebDAV functionality. With installed davfs2 just add one line to your
https://example.com/cloud /home/user/reddav davfs user,noauto,uid=tobias,file_mode=600,dir_mode=700 0 1
which is more or less the same as for your OwnCloud share and you have an direct access from your desktop to the cloud drive in the matrix. But remember to check access of your contacts to the directories in your cloud. For the magical details I'll just point out the documentation of the red#matrix.