Radicale


Table of Contents
1. Calendar and Addressbook (Radicale)
1.1. Why should I run Radicale?
1.2. How to setup Radicale?
1.3. Advanced Users
1.3.1. Sharing resources
1.3.2. Importing files

1. Calendar and Addressbook (Radicale)

With Radicale, you can synchronize your personal calendars, ToDo lists, and addressbooks with your various computers, tablets, and smartphones, and share them with friends, without letting third parties know your personal schedule or contacts.


1.1. Why should I run Radicale?

Using Radicale, you can get rid of centralized services like Google Calendar or Apple Calendar (iCloud) data mining your events and social connections.


1.2. How to setup Radicale?

First, the Radicale server needs to be activated on your box.

  • Within Plinth

    1. select Applications

    2. go to Calendar and Addressbook (Radicale) and

    3. install the application. After the installation is complete, make sure the application is marked "enabled" in the FreedomBox interface. Enabling the application launches the Radicale CalDAV/CardDAV server.

    4. define the access rights:

      • Only the owner of a calendar/addressbook can view or make changes

      • Any user can view any calendar/addressbook, but only the owner can make changes

      • Any user can view or make changes to any calendar/addressbook

Note, that only users with a FreedomBox login can access Radicale.

If you want to share a calendar with only some users, the simplest approach is to create an additional user-name for these users and to share that user-name and password with them.

Radicale does not have a user interface. An external supported client application is needed.

Now open your client application to create new calendar and address books that will use your FreedomBox and Radicale server. The Radicale website provides an overview of supported clients, but do not use the URLs described there; FreedomBox uses another setup, follow this manual. Below are the steps for two examples:

  • Example of setup with Evolution client:

    • Calendar

      1. Create a new calendar

      2. For "Type," select "CalDAV"

      3. When "CalDAV" is selected, additional options will appear in the dialogue window.

      4. URL: https://IP-address-or-domain-for-your-server/radicale/user/contact-file-name.ics/. Items in italics need to be changed to match your settings.

        • note the trailing / in the path, it is important.

      5. Enable "Use a secure connection."

      6. Name the calendar

    • TODO/Tasks list: Adding a TODO/Tasks list is basically the same as a calendar.

    • Contacts

      • Follow the same steps described above and replace CalDAV with WebDAV. The extension of the address book will be .vcf.

  • Android

    • There are various Apps that allow the integration of the *radicale* server. This example uses DAVdroid, which is available e.g. on F-Droid.

    • If you intend to use ToDo-Lists as well, the compatible app OpenTasks has to be installed first.

    • Install DAVdroid

    • Create an account in DAVdroid with the same settings as described for Evolution

    • Click the newly created account and synchronize.

    • The settings, such as periodicity of synchronization, can be adjusted.

    • A contact or calendar file, that was created before appears.

    • Enable it.

    • It may take some minutes before e.g. the calendar is visible in your calendar app.


1.3. Advanced Users

1.3.1. Sharing resources

Above was shown an easy way to create a resource for a group of people by creating a dedicated account for all. Here will be described an alternative method where two users User1 and User2 are granted access to a calendar. This requires SSH-access to the FreedomBox.

  1. create a file /etc/radicale/rights

    • [friends_calendar]
      user: ^(User1|User2)$
      collection: ^.*/calendar_of_my_friends.ics$
      permission: rw
      
      # Give write access to owners
      [owner-write]
      user: .+
      collection: ^%(login)s/.+$
      permission: rw
    • [friends_calendar] is just an identifier, can be any name.

    • The [owner-write] section makes sure that owners have access to their own files

  2. edit file /etc/radicale/config and make the following changes in section [rights)

    • [rights]
      type = from_file
      file = /etc/radicale/rights
  3. Restart the radicale server or the FreedbomBox


1.3.2. Importing files

If you are using a contacts file exported from another service or application, it should be copied to: /var/lib/radicale/collections/user/contact file name.vcf.