Installation

Linux

Update system with apt
Install apache2

# Switch to root
sudo su root
 
# Install radicale
apt install radicale -y
 
# Create User and Group
useradd --system --user-group --home-dir / --shell /sbin/nologin radicale
 
# Create folder
mkdir -p /var/lib/radicale/collections 
chown -R radicale:radicale /var/lib/radicale/collections 
chmod -R o= /var/lib/radicale/collections 
 
# Create folder
mkdir -p /var/cache/radicale
chown -R radicale:radicale /var/cache/radicale 
chmod -R o= /var/cache/radicale 
# Create application user
htpasswd -5 -c /etc/radicale/users <username>
# Update configuration
nano /etc/radicale/config
[server]
hosts = 0.0.0.0:5232, [::]:5232
 
[auth]
type = htpasswd
htpasswd_filename = /etc/radicale/users
htpasswd_encryption = autodetect
# Create service definition
nano /etc/systemd/system/radicale.service
[Unit]
Description=A simple CalDAV (calendar) and CardDAV (contact) server
After=network.target
Requires=network.target
 
[Service]
ExecStart=radicale
Restart=on-failure
User=radicale
# Deny other users access to the calendar data
UMask=0027
# Optional security settings
PrivateTmp=true
ProtectSystem=strict
ProtectHome=true
PrivateDevices=true
ProtectKernelTunables=true
ProtectKernelModules=true
ProtectControlGroups=true
NoNewPrivileges=true
ReadWritePaths=/var/lib/radicale/ /var/cache/radicale/
 
[Install]
WantedBy=multi-user.target
# Enable the service
systemctl enable radicale
# Start the service
systemctl start radicale
# Check the status of the service
systemctl status radicale
# View all log messages
journalctl --unit radicale.service

Version

radicale --version

Appendix