nixpkgs/home/programs/vdirsyncer.nix
Daniel Siepmann 7682f47e0f
Update vdirsync calendars
Remove sync to own calendars.
Always fetch from original source to local.
2023-06-01 09:21:59 +02:00

59 lines
2 KiB
Nix

{ pkgs, config }:
{
enable = true;
frequency = "Mon..Thu *-*-* 15,12,8:00";
# Run `vdirsyncer discover <name>` after adding a new pair
configuration = ''
[general]
status_path = "${config.xdg.dataHome}/vdirsyncer/status/"
[pair private_calendar]
a = "private_calendar_local"
b = "private_calendar_remote"
collections = ["from a", "from b"]
[storage private_calendar_local]
type = "filesystem"
path = "${config.xdg.dataHome}/vdir/calendars/private/"
fileext = ".ics"
[storage private_calendar_remote]
type = "caldav"
url = "https://nextcloud.daniel-siepmann.de/remote.php/dav"
username = "dsiepmann"
password.fetch = ["command", "${pkgs.libsecret}/bin/secret-tool", "lookup", "account", "app-dsiepmann@nextcloud.daniel-siepmann.de"]
start_date = "datetime.now() - timedelta(days=60)"
end_date = "datetime.now() + timedelta(days=365)"
[pair company_calendar]
a = "company_calendar_local"
b = "company_calendar_remote"
collections = ["from a", "from b"]
[storage company_calendar_local]
type = "filesystem"
path = "${config.xdg.dataHome}/vdir/calendars/company/"
fileext = ".ics"
[storage company_calendar_remote]
type = "caldav"
url = "https://nextcloud.codappix.com/remote.php/dav"
username = "daniel.siepmann"
password.fetch = ["command", "${pkgs.libsecret}/bin/secret-tool", "lookup", "account", "app-dsiepmann@nextcloud.codappix.com"]
start_date = "datetime.now() - timedelta(days=60)"
end_date = "datetime.now() + timedelta(days=365)"
[pair sac_team]
a = "sac_team_calendar_local"
b = "sac_team_calendar_remote"
collections = null
[storage sac_team_calendar_local]
type = "filesystem"
path = "${config.xdg.dataHome}/vdir/calendars/sac_team/"
fileext = ".ics"
[storage sac_team_calendar_remote]
type = "http"
url = "https://calendar.google.com/calendar/ical/0ks410dho8f5ohcik361i4c2bs%40group.calendar.google.com/public/basic.ics"
'';
}