diff --git a/Sharing-Calendars.md b/Sharing-Calendars.md new file mode 100644 index 0000000..8fe7c14 --- /dev/null +++ b/Sharing-Calendars.md @@ -0,0 +1,24 @@ +Some calendar clients, (e.g. iOS, or KDE Kontact) add all of a user's calendars at once. So to minimise client configuration I decided to set up sharing on the server side. + +My motivation is to have two (or more) users on the server with three different kinds of calendars each: personal calendars (not shared), calendars readable by the other user(s), and calendars writeable by everyone. + +I'm using the following **rights** configuration file (still on Radicale 1.1.1, but it might also work on 2.0): + + # The first rule matching both user and collection patterns will be returned. + + # Allow authenticated user to read 'shared' collections in their home directory + # (usually symlinks from other calendars) + [allow-shared-read] + user: .+ + collection: %(login)s/.+-shared.ics$ + permission: r + + # Give owners read-write access to everything else: + [owner-write] + user: .+ + collection: %(login)s.*$ + permission: rw + +Now to share my **calendar.ics** with a second user, I, 'V', am creating a symlink to e.g. **v-shared.ics** in the other user's calendar directory. The other user can now **only** read the calendar, thanks to the rule [allow-shared-read]. + +If I want to give write access another user, I'll just create a link not ending in _'-shared.ics'_, to that user's directory. This setup is just tested briefly, but I found another user mentioning a similar approach on the issues tracker. \ No newline at end of file