1
0
Fork 0
nix-system-configurations/home-manager/calendar.nix

74 lines
1.7 KiB
Nix

# SPDX-FileCopyrightText: 2025 Ethan Reece <contact@ethanreece.com>
#
# SPDX-License-Identifier: MIT
{ config, domains, ... }:
{
imports = [ ./secrets.nix ];
accounts.calendar = {
basePath = ".calendars";
accounts.personal = {
name = "personal";
# primary = true;
remote =
let
userName = "nextcloud@sudoer.ch";
in
{
inherit userName;
url = "https://cloud.${domains.netName}/remote.php/dav/calendars/${userName}";
type = "caldav";
passwordCommand = [
"${config.programs.rbw.package}/bin/rbw"
"get"
"NextCloud"
];
};
khal = {
enable = true;
type = "discover";
};
vdirsyncer = {
enable = true;
auth = "basic";
conflictResolution = "remote wins";
timeRange = {
end = "datetime.now() + timedelta(days=365)";
start = "datetime.now() - timedelta(days=365)";
};
collections = [
"from a"
"from b"
];
};
};
};
programs = {
khal = {
enable = true;
locale = {
firstweekday = 6;
timeformat = "%H:%M";
dateformat = "%Y-%m-%d";
longdateformat = "%Y-%m-%d %a";
datetimeformat = "%Y-%m-%d %H:%M";
longdatetimeformat = "%Y-%m-%d %H:%M";
};
settings = {
default = {
default_calendar = "important-1";
timedelta = "5d";
};
view = {
agenda_event_format = "{calendar-color}{cancelled}{start-end-time-style} {title}{repeat-symbol}{reset}";
};
};
};
khard = {
enable = true;
};
vdirsyncer = {
enable = true;
};
};
}