jtxBoard: Notes and Journals on Nextcloud
1. Intro
On my self-hosted Nextcloud instance I used to use Nextcloud Notes and the Android app to sync my notes.
But since I discovered jtxBoard, I always wanted to make the switch: jtxBoard uses the VJOURNAL entry in CalDAV calendars to sync journals and notes.
This is great, because it follows a standard protocol (iCalendar / RFC-5545), which could be used by a lot of programs, and is independent from what the Nextcloud devs will do in future.
However, there are not a lot of clients which support VJOURNAL unfortunately, but more on that later.
When I tried jtxBoard on my phone for the first time, I discovered my existing calendars couldn't be used immediately. That's because calendars in iCalendar can be set up for different purposes:
- Calendar
- Tasks
- Journal
By default, Nextcloud only enables the Calendar and optionally the Tasks feature for it's calendars. To make it work with journals, you need to create a new iCalendar in DAVx5, enable all features and then sync it to Nextcloud.
Since it is not possible to add a feature after creation (at least I don't know a way), there are some extra steps in order to keep all your existing entries.
2. Difference between Journal and Note entry
Both are stored as VJOURNAL entry in your iCalendar, with their only difference is journal entries do have a date entry, while notes do not.
3. Convert calendar
- Backup your existing calendar
Follow this guide:
https://makesmart.net/blog/read/nextcloud-backup-kontakte-und-kalender-sichern
Edit calendar, then you can select Export to download the .ics file. This already includes the tasks!
- Delete your calendar in nextcloud
Be careful here and make sure you have a complete backup. This step also deletes the related tasks list, even though that's not clear from the web interface.
- Create a new calendar
Important: Do it on the phone in DAVx5. This way, you can select to create Calendar/Tasks and also Journal. Which is important to make it work with jtxBoard.
- Import .ics file
In Nextcloud, under Calendar -> Settings there is an import button. After selecting the .ics file, you can choose the calendar to import to.
For me, I have seen a lot of failed requests (HTTP 500) in the network tab. I had to re-import the .ics several times until all entries have been imported correctly. Not sure what the issue was, maybe some kind of rate-limiting.
- Change the default..
.. calendar and todo list in Nextcloud to create new entries there.
4. Desktop client
While syncing calendar entries and todos works with most clients, unfortunately, there seems to be no good gui client for Linux out there yet which supports journals. :(
But I do have hope it will find some adoption soon.
See here: jtxBoard GitHub Issue: What is the best desktop client?
and Thunderbird integration request here: Support VJOURNAL in Thunderbird
Joplin will not support VJOURNAL: To-Dos - sync with CalDAV-Server
KOrganizer and Evolution support journals I think, but I haven't tried them.