Table of Contents
Independence
Although you find this in the Applications section, this is certainly not an application. It is actually a complete solution consisting of the integration of several applications. I call it Independence because this makes you a little more independent from big Tech providers and their data mining.
This solution will enable you to have a central calendar and address book (contact list) and share them between your desktop installations of Thunderbird, the web interfaces of Nextcloud, Roundcube and finally even your (Android) mobile phone. It may of course also work with other applications and iOS but I have not tested that.
If you use all of this in combination with the most excellent ISP mailserver solution, you reach a great deal of independence.
Although strictly speaking his site is aimed at personal use, this could even be interesting for small companies.
Nextcloud
Next to the earlier mentioned mail server solution, the basis for this to work well is an installation of Nextcloud and its CardDAV/CalDAV capabilities.
I will not explain the installation and configuration of Nextcloud here as this product is well documented. However, you should be aware of a few prerequisites:
- The applications “Contacts” and “Calendar” need to be activated (they were deactivated by default on my initial installation).
- It is advisable (though not necessary) to do some performance tuning. This mainly involves having a well tuned database server (mysqltuner and table defragmentation/optimization can help) as well as using memcache/Redis.
Calendaring
This will enable you to share your calendar not only between your desktop, the web and your mobile device, but even with friends or family members, whoever you give access.
Nextcloud Calendar
As mentioned earlier, the calendaring app needs to be enabled.
Next, you have to find out the link for your calendar, To do this go to your Nextcloud webinterface to the calendar app. When hovering over the calendar icon, you can click on the pen to edit the calendar. There you can find the “Internal Link” specific to that calendar.
Instead of connecting to a specific calendar and if your application supports it, you can also connect to all calendars which are available to you. In that case you will need the generic URL.
The generic link usually looks like this:
https://<your.cloud.url>/remote.php/dav/
Specific calendars have links like these:
https://<your.cloud.url>/remote.php/dav/calendars/<username>/<calendarname>/
Thunderbird
Before, you needed to install the Lightning extension to use a calendar in Thunderbird. Nowadays that is no longer necessary, it is integrated by default.
Next, follow these steps to connect your Nextcloud calendar.
- Open the calendar within Thunderbird (using the icon or menu).
- Click the “New Calendar” button on the bottom left.
- Choose “On the network” as your new calendars location.
- Choose “CalDAV” as calendar type.
- Give the location of your calendar. Use the earlier mentioned Nextcloud link to your named calendar (the Thunderbird calendar does not handle the generic URL very well).
- If this is the first time you connect to that WebDAV share, you will be asked for credentials. Use your Nextcloud credentials.
- You can now pick a name and color for this calendar, as well as an e-mail address to use for invitations. Different names and colors are useful when sharing calendars with others.
- Setting up the calendar is now finished.
You can now delete the default (local) calendar if you wish. To create new entries just double-click somewhere in the calendar view, the rest is pretty self-explanatory. Don't forget to also check out the other options!
Thunderbird will synchronize the calendar(s) on startup and shutdown, also every 30 minutes (default setting) while running. If you wish to manually synchronize the calendar(s) right-click on any calendar and choose “Synchronize” in the menu, or use the “Synchronize” button. See also the first screenshot above.
You can also add more calenders. e.g. create one shared calendar and one personal calendar for every person in your household.
Note that you should set automatic calendars like your Contact Birthdays to read-only in their properties, otherwise it will not be possible to dismiss any reminders and notifications!
CalDAV on Android
I am not aware of any good free CalDAV app for Android, also as far as I know it does not come with integrated CalDAV support, If you know any good, free app please let me know in the comments below!
Generally I would recommend the use of DAVx⁵. It costs a few bucks but is absolutely worth it.
In any case, the specific or generic URL's from above can be used in any CalDAV app as well.
Contacts
Instead of managing your address book in Thunderbird and RoundCube and synchronizing your contacts with your Google account you can also choose to manage your contacts within Nextcloud and then access that address book from Thunderbird, RoundCube and your mobile device. All contacts available everywhere!
Nextcloud Contacts
As mentioned earlier, the contacts app needs to be enabled.
Next, you have to find out the link for your contacts, To do this go to your Nextcloud webinterface to the contacts app. In the lower left corner you have a small cog icon (called “Settings”), click that and you will find the settings for your address books. In the 'dot'-menu to the right of its name you can choose to copy the link.
Usually it looks like this:
https://<your.cloud.url>/remote.php/dav/addressbooks/users/<username>/<addressbook>/
Thunderbird with CardBook
To use the Nextcloud CardDAV address book in Thunderbird you finally no longer need an extension, Thunderbird natively supports CardDAV now.
- Choose the small down arrow next to the button “New Address Book” on the top left corner in the Contacts app.
- Choose “Add CardDAV Address Book”
- After validation (using the button “Validate”) you can press Next.
- Give a name and color to the address book, Press Next and believe it or not, you are done already.
Roundcube with CardDAV
If your administrator enabled the CardDAV plugin for RoundCube it is really simple to connect to the Nextcloud address book. Simply go to “Settings –> Preferences –> CardDAV” and enter your credentials like URL, user name and password.
I recommend using a short synchronization interval, not the suggested hour but e.g. 5 minutes (you can edit that after saving).
CardDAV on Android
As opposed to CalDAV there are free CardDAV apps available in the Play Store. Just install any app you want and fill in the credentials you should know by now (URL, user name and password). In the account settings, disable the synchronization of your Google contacts and you are done already. Nice and easy
More comfort on Android
If you don't mind spending a few bucks and want a more comfortable setup of your CalDAV/CardDAV setup on Android I can recommend the app DAVx⁵ (formerly DAVdroid). Just one app for Calendar and contacts, even tasks if you want. Just use your NextCloud username and password ad give
https://<your.cloud.url>/remote.php/dav
as base URL. DAVx⁵ will discover everything else automatically. You just have to tell it which address books and calendars to synchronize and you are done.
Discussion