about summary refs log tree commit diff stats
diff options
context:
space:
mode:
authorSoispha <soispha@vhack.eu>2023-10-01 13:48:42 +0200
committerSoispha <soispha@vhack.eu>2023-10-01 13:54:50 +0200
commit4d8f53f3de585261124c5147fbe39f704a5eeaf3 (patch)
tree3783f130a546c61230b96e4ec289f56511c02d1b
parentchore(version): v1.14.0 (diff)
downloadnixos-config-4d8f53f3de585261124c5147fbe39f704a5eeaf3.tar.gz
nixos-config-4d8f53f3de585261124c5147fbe39f704a5eeaf3.zip
feat(hm/conf/taskwarrior): Add first config for neorg ⇄ taskwarrior interop
-rw-r--r--.gitattributes7
-rw-r--r--hm/soispha/conf/taskwarrior/default.nix35
-rw-r--r--hm/soispha/conf/taskwarrior/nord.theme100
-rw-r--r--hm/soispha/conf/taskwarrior/projects/default.nixbin0 -> 381 bytes
4 files changed, 135 insertions, 7 deletions
diff --git a/.gitattributes b/.gitattributes
index 1198b1a5..f866b1fa 100644
--- a/.gitattributes
+++ b/.gitattributes
@@ -1,7 +1,6 @@
 hm/soispha/conf/mail/non_public_accounts.nix filter=git-crypt diff=git-crypt
+hm/soispha/conf/taskwarrior/projects/* filter=git-crypt diff=git-crypt
+
 
 # gpg keys:
-hm/soispha/conf/gpg/keys/key_1 filter=git-crypt diff=git-crypt
-hm/soispha/conf/gpg/keys/key_2 filter=git-crypt diff=git-crypt
-hm/soispha/conf/gpg/keys/key_3 filter=git-crypt diff=git-crypt
-hm/soispha/conf/gpg/keys/key_4 filter=git-crypt diff=git-crypt
+hm/soispha/conf/gpg/keys/key_* filter=git-crypt diff=git-crypt
diff --git a/hm/soispha/conf/taskwarrior/default.nix b/hm/soispha/conf/taskwarrior/default.nix
index 803d2d5d..78bcacd0 100644
--- a/hm/soispha/conf/taskwarrior/default.nix
+++ b/hm/soispha/conf/taskwarrior/default.nix
@@ -1,10 +1,39 @@
 {...}: {
-  programs.taskwarrior = {
+  programs.taskwarrior = let
+    mkContext = project: {
+      inherit (project) name;
+      value = {
+        read = "project:${project.name}";
+        write = "project:${project.name}";
+        rc = {
+          neorg_path = "${project.prefix}/${project.name}/index.norg";
+        };
+      };
+    };
+    context = builtins.listToAttrs (builtins.map mkContext (import ./projects {}));
+  in {
     enable = true;
-    colorTheme = "dark-blue-256";
     config = {
       news.version = "2.6.0";
-      # TODO: Add something here <2023-09-30>
+      complete.all.tags = true;
+      list.all = {
+        projects = true;
+        tags = true;
+      };
+      regex = true;
+      weekstart = "Monday";
+      uda = {
+        neorg = {
+          type = "string";
+          label = "Neorg";
+        };
+      };
+      color = true;
+
+      inherit context;
     };
+    extraConfig = ''
+      include ${./nord.theme}
+    '';
   };
 }
diff --git a/hm/soispha/conf/taskwarrior/nord.theme b/hm/soispha/conf/taskwarrior/nord.theme
new file mode 100644
index 00000000..9399a8ae
--- /dev/null
+++ b/hm/soispha/conf/taskwarrior/nord.theme
@@ -0,0 +1,100 @@
+# Copyright (C) 2016-present Arctic Ice Studio <development@arcticicestudio.com>
+# Copyright (C) 2016-present Sven Greb <development@svengreb.de>
+
+# Project:    igloo
+# Repository: https://github.com/arcticicestudio/igloo
+# License:    MIT
+# References:
+#   https://taskwarrior.org/docs/themes.html
+#   task-color(5)
+#   taskrc(5)
+
+rule.precedence.color=deleted,completed,active,keyword.,tag.,project.,overdue,scheduled,due.today,due,blocked,blocking,recurring,tagged,uda.
+
+#+---------+
+#+ General +
+#+---------+
+color.label=
+color.label.sort=
+color.alternate=
+color.header=bold blue
+color.footnote=cyan
+color.warning=bold black on yellow
+color.error=bold white on red
+color.debug=magenta
+
+#+-------------+
+#+ Task States +
+#+-------------+
+color.completed=green
+color.deleted=red
+color.active=bold black on cyan
+color.recurring=
+color.scheduled=white on black
+color.until=white on bright black
+color.blocked=yellow on black
+color.blocking=bold yellow on black
+
+#+----------+
+#+ Projects +
+#+----------+
+color.project.none=
+
+#+----------+
+#+ Priority +
+#+----------+
+color.uda.priority.H=bold cyan
+color.uda.priority.M=bold blue
+color.uda.priority.L=bold black
+
+#+------+
+#+ Tags +
+#+------+
+color.tag.next=
+color.tag.none=
+color.tagged=
+
+#+-----+
+#+ Due +
+#+-----+
+color.due=blue
+color.due.today=cyan on black
+color.overdue=bold red
+
+#+---------+
+#+ Reports +
+#+---------+
+color.burndown.done=bold black on cyan
+color.burndown.pending=black on bright cyan
+color.burndown.started=black on blue
+
+color.history.add=bold black on blue
+color.history.delete=bright white on bold black
+color.history.done=bold black on cyan
+
+color.summary.background=bright white on black
+color.summary.bar=black on cyan
+
+#+----------+
+#+ Calendar +
+#+----------+
+color.calendar.due=bold black on blue
+color.calendar.due.today=bold black on cyan
+color.calendar.holiday=bold blue on white
+color.calendar.overdue=white on red
+color.calendar.today=bold black on cyan
+color.calendar.weekend=bright white on bright black
+color.calendar.weeknumber=bold black
+
+#+-----------------+
+#+ Synchronization +
+#+-----------------+
+color.sync.added=green
+color.sync.changed=yellow
+color.sync.rejected=red
+
+#+------+
+#+ Undo +
+#+------+
+color.undo.after=green
+color.undo.before=red
diff --git a/hm/soispha/conf/taskwarrior/projects/default.nix b/hm/soispha/conf/taskwarrior/projects/default.nix
new file mode 100644
index 00000000..01c3f7cf
--- /dev/null
+++ b/hm/soispha/conf/taskwarrior/projects/default.nix
Binary files differ