diff options
Diffstat (limited to 'modules/user/aszlig/programs/taskwarrior/default.nix')
-rw-r--r-- | modules/user/aszlig/programs/taskwarrior/default.nix | 36 |
1 files changed, 36 insertions, 0 deletions
diff --git a/modules/user/aszlig/programs/taskwarrior/default.nix b/modules/user/aszlig/programs/taskwarrior/default.nix new file mode 100644 index 00000000..99d428de --- /dev/null +++ b/modules/user/aszlig/programs/taskwarrior/default.nix @@ -0,0 +1,36 @@ +{ config, pkgs, lib, ... }: + +let + cfg = config.vuizvui.user.aszlig.programs.taskwarrior; + + taskrc = pkgs.writeText "taskrc.in" '' + data.location=~/.task + include @out@/share/doc/task/rc/dark-yellow-green.theme + + color=on + dateformat=Y-m-d + dateformat.annotation=Y-m-d + dateformat.edit=Y-m-d H:N:S + dateformat.holiday=YMD + dateformat.info=Y-m-d H:N:S + dateformat.report=Y-m-d + weekstart=Monday + ''; + + taskwarrior = pkgs.taskwarrior.overrideDerivation (t: { + patches = (t.patches or []) ++ [ ./config.patch ]; + postInstall = (t.postInstall or "") + '' + mkdir -p "$out/etc" + substituteAll "${taskrc}" "$out/etc/taskrc" + ''; + }); + +in { + options.vuizvui.user.aszlig.programs.taskwarrior = { + enable = lib.mkEnableOption "aszlig's TaskWarrior"; + }; + + config = lib.mkIf cfg.enable { + environment.systemPackages = lib.singleton taskwarrior; + }; +} |