about summary refs log tree commit diff stats
path: root/modules/by-name/ta/taskwarrior/module.nix
blob: 0a9428200d27fe1d2befd54d528a54677e313d0c (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
{
  lib,
  config,
  ...
}: let
  cfg = config.soispha.programs.taskwarrior;
in {
  options.soispha.programs.taskwarrior = {
    enable = lib.mkEnableOption "taskwarrior-secrets";
  };

  # HACK: Migrating the whole `taskwarrior` setup is right now unrealistic, as the module is
  # tightly coupled with the `firefox` module, and `neorg` script.
  # But to work around the  fact that setting the `age` secrets in the legacy module is
  # impossible, this module was created as work-around until the `taskwarrior` module can
  # be fully migrated. <2024-10-18>
  config = lib.mkIf cfg.enable {
    age.secrets = {
      taskserverPrivate = {
        file = ./secrets/private.key;
        mode = "700";
        owner = "soispha";
        group = "users";
      };
      taskserverPublic = {
        file = ./secrets/public.cert;
        mode = "700";
        owner = "soispha";
        group = "users";
      };
      taskserverCA = {
        file = ./secrets/ca.cert;
        mode = "700";
        owner = "soispha";
        group = "users";
      };
      taskserverCredentials = {
        file = ./secrets/credentials;
        mode = "700";
        owner = "soispha";
        group = "users";
      };
    };
  };
}