Files
nix/home/modules/taskwarrior.nix

47 lines
1.5 KiB
Nix

{
config,
pkgs,
...
}:
{
home.packages = with pkgs; [
python314
libnotify
];
home.file = {
".config/task/taskrc" = {
force = true; # overwrite when present
source = ../../dots/.config/task/taskrc;
};
".config/task/taskrc.d/aliases".source = ../../dots/.config/task/taskrc.d/aliases;
".config/task/taskrc.d/colors".source = ../../dots/.config/task/taskrc.d/colors;
".config/task/taskrc.d/contexts".source = ../../dots/.config/task/taskrc.d/contexts;
".config/task/taskrc.d/reports".source = ../../dots/.config/task/taskrc.d/reports;
".config/task/taskrc.d/udas".source = ../../dots/.config/task/taskrc.d/udas;
".config/task/taskrc.d/urgency".source = ../../dots/.config/task/taskrc.d/urgency;
".local/share/task/hooks/on-exit.sync.py" = {
source = ../../dots/.local/share/task/hooks/on-exit.sync.py;
};
".local/share/task/scripts/sync-and-notify.sh" = {
source = ../../dots/.local/share/task/scripts/sync-and-notify.sh;
executable = true;
};
};
programs.taskwarrior = with pkgs; {
enable = true;
package = taskwarrior3;
colorTheme = "dark-256";
config = {
sync = {
server.url = config.sops.secrets."taskwarrior_sync_server_url".path;
server.client_id = config.sops.secrets."taskwarrior_sync_server_client_id".path;
encryption_secret = config.sops.secrets."taskwarrior_sync_encryption_secret".path;
};
recurrence = "off"; # TODO: enable only on andromache
};
};
}