2 ms·
Another CalDav server I can recommend is Radicale. It's written in python and designed in a pretty modular way, enabling authentication and authorization (and m
by eulenteufel 1y ago
Another CalDav server I can recommend is Radicale.
It's written in python and designed in a pretty modular way,
enabling authentication and authorization (and more) plugins.
Data is saved in plain text files and I track/backup it using git.
Over the time I've accumulated some interesting modifications:
- Authentication runs with pam on the host system.
- To enable sharing of calendars I run a periodic script symlinking the calendars to all authorized users. Unfortunately this suffers from combinatiorial explosion.
- Using a rights plugin with custom CalDav Attributes and a modified web plugin I added
support for access Control Lists.
- To enable public calendars you give read permissions to the `public` user using ACL.
Then a nginx hack gives blanket acces for read operations:
location /public {
proxy_pass http://127.0.0.1:{%RADICALE_PORT%};
include proxy_params;
proxy_set_header Authorization "Basic {%RADICALE_PUBLIC_AUTH%}";
proxy_hide_header Authorization;
add_header Access-Control-Allow-Origin * always;
add_header Access-Control-Allow-Methods "GET, OPTIONS, PROPFIND";
add_header Access-Control-Allow-Headers "Depth";
limit_except GET OPTIONS PROPFIND { deny all; }
}
These public calendars are can be viewed on a web calendar (https://gitlab.nomagic.uk/popi/js_calendar_from_ics https://gitlab.nomagic.uk/popi/js_calendar_from_ics)
I should probably write a blog post about the setup.
- HumblyTossed 1y agoLet us know when that blog post goes live… ;)
- frainfreeze 1y agoYup, also interested in that. I have a half broken home cooked software that is basically radicale x monica crm that I would like to phase out for something better.
- jesterson 1y agoThis. Have been using Radicale for years. Except occasional issues with BusyCal it's been a very smooth ride.