Calendar Integration
██████╗ ███╗ ███╗███████╗ ██╔══██╗████╗ ████║██╔════╝ ██║ ██║██╔████╔██║███████╗ ██║ ██║██║╚██╔╝██║╚════██║ ██████╔╝██║ ╚═╝ ██║███████║ ╚═════╝ ╚═╝ ╚═╝╚══════╝
Sync your CalDAV-compatible calendar (Google Calendar, Office365, etc.) for dashboard integration.
Setting up khal and vdirsyncer is very user-unfriendly and convoluted, in a future release this integration will be replaced with DankCalendar.
Fore more details, view the khal documentation directly. DMS will automatically pick up khal events once configured.
Installation
Install the required dependencies for calendar synchronization:
Arch & Derivatives
sudo pacman -S vdirsyncer khal python-aiohttp-oauthlib
Fedora & Derivatives
sudo dnf install python3-vdirsyncer khal python3-aiohttp-oauthlib
Configuration
1. Configure vdirsyncer
Create ~/.vdirsyncer/config:
[general]
status_path = "~/.calendars/status"
[pair personal_sync]
a = "personal"
b = "personallocal"
collections = ["from a", "from b"]
conflict_resolution = "a wins"
metadata = ["color"]
[storage personal]
type = "google_calendar"
token_file = "~/.vdirsyncer/google_calendar_token"
client_id = "your_client_id"
client_secret = "your_client_secret"
[storage personallocal]
type = "filesystem"
path = "~/.calendars/Personal"
fileext = ".ics"
2. Initial Sync
Run the initial synchronization and configure khal:
vdirsyncer sync
khal configure
3. Auto-sync (Optional)
Set up automatic synchronization every 5 minutes using cron:
crontab -e
Add the following line:
*/5 * * * * /usr/bin/vdirsyncer sync
Troubleshooting
Calendar not syncing
Check vdirsyncer credentials and network connectivity:
vdirsyncer -vdebug sync
Missing calendar events
Verify khal is configured correctly:
khal list
Authentication issues
For Google Calendar, ensure your OAuth client ID and secret are correct. You may need to re-authenticate:
rm ~/.vdirsyncer/google_calendar_token
vdirsyncer sync