52 lines
1.4 KiB
Nix
52 lines
1.4 KiB
Nix
{ lib
|
|
, config
|
|
, pkgs
|
|
, ...
|
|
}:
|
|
|
|
with lib;
|
|
let
|
|
cfg = config.my.profiles.personal;
|
|
in
|
|
{
|
|
options.my.profiles.personal.calendar = mkEnableOption "calendar";
|
|
|
|
config = mkIf cfg.contacts {
|
|
home-manager.users.moritz = {
|
|
programs.khal.enable = true;
|
|
programs.vdirsyncer.enable = true;
|
|
services.vdirsyncer.enable = true;
|
|
accounts.calendar = {
|
|
basePath = "Documents/Calendar";
|
|
accounts.personal = {
|
|
local = {
|
|
type = "filesystem";
|
|
fileExt = ".ics";
|
|
};
|
|
remote = {
|
|
passwordCommand = [ "cat" "/run/agenix/nextcloud" ];
|
|
url = "https://nextcloud.moritzboeh.me/remote.php/dav";
|
|
type = "caldav";
|
|
userName = "moritz";
|
|
};
|
|
primaryCollection = "personal";
|
|
khal.enable = true;
|
|
khal.type = "discover";
|
|
vdirsyncer.enable = true;
|
|
vdirsyncer.collections = [
|
|
"personal" # Personal
|
|
"einkaufsliste" # Einkaufsliste
|
|
"9b8be6f3-d85c-4c1e-b006-00910f56bf5d" # Tasks
|
|
"contact_birthdays" # Contact birthdays
|
|
"f71a1a0f-08c5-45de-84e8-e7f16b748ba5" # Uni
|
|
"32c96d6f-a575-48b1-949a-6ae548f7a779" # Work
|
|
];
|
|
};
|
|
};
|
|
};
|
|
age.secrets.nextcloud = {
|
|
file = ../../secrets/nextcloud.age;
|
|
owner = "1000";
|
|
};
|
|
};
|
|
}
|