declare taskwarrior for all NixOS hosts
parent
2e81d28cc8
commit
92226fff95
24
flake.lock
24
flake.lock
|
|
@ -29,11 +29,11 @@
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"dir": "pkgs/firefox-addons",
|
"dir": "pkgs/firefox-addons",
|
||||||
"lastModified": 1763438658,
|
"lastModified": 1763885608,
|
||||||
"narHash": "sha256-ojDdZbQG9wJyEkAQSpGUvgJ4edDnY13HXdf0dHaYKJw=",
|
"narHash": "sha256-eFRbKKMaEHC5EaL7sxfPVFPFsr0Plzx03e1VkJkcsBA=",
|
||||||
"owner": "rycee",
|
"owner": "rycee",
|
||||||
"repo": "nur-expressions",
|
"repo": "nur-expressions",
|
||||||
"rev": "095dd41814f14586166d8c1fd9012d5e8dad0a44",
|
"rev": "c94982d5890f4ff0737d57ed97503c1c8d40195c",
|
||||||
"type": "gitlab"
|
"type": "gitlab"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
|
@ -85,10 +85,10 @@
|
||||||
"nix-secrets": {
|
"nix-secrets": {
|
||||||
"flake": false,
|
"flake": false,
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1762546290,
|
"lastModified": 1763919406,
|
||||||
"narHash": "sha256-a0mXF68to0eJQiIq1vCBMcGCX1UA1lBpwHgCinKfORA=",
|
"narHash": "sha256-WaGxnH7dm63syPt8E4MXbg4XVxQveXPe+cZu3iPz25w=",
|
||||||
"ref": "main",
|
"ref": "main",
|
||||||
"rev": "b0473511f3718fb95f01e6c8bad6da3eb582974c",
|
"rev": "4423bf215047474ecb89f4d8ad63a04e734b252a",
|
||||||
"shallow": true,
|
"shallow": true,
|
||||||
"type": "git",
|
"type": "git",
|
||||||
"url": "ssh://git@github.com/hektor/nix-secrets"
|
"url": "ssh://git@github.com/hektor/nix-secrets"
|
||||||
|
|
@ -154,11 +154,11 @@
|
||||||
},
|
},
|
||||||
"nixpkgs": {
|
"nixpkgs": {
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1763334038,
|
"lastModified": 1763622513,
|
||||||
"narHash": "sha256-LBVOyaH6NFzQ3X/c6vfMZ9k4SV2ofhpxeL9YnhHNJQQ=",
|
"narHash": "sha256-1jQnuyu82FpiSxowrF/iFK6Toh9BYprfDqfs4BB+19M=",
|
||||||
"owner": "nixos",
|
"owner": "nixos",
|
||||||
"repo": "nixpkgs",
|
"repo": "nixpkgs",
|
||||||
"rev": "4c8cdd5b1a630e8f72c9dd9bf582b1afb3127d2c",
|
"rev": "c58bc7f5459328e4afac201c5c4feb7c818d604b",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
|
@ -324,11 +324,11 @@
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1763417348,
|
"lastModified": 1763870012,
|
||||||
"narHash": "sha256-n5xDOeNN+smocQp3EMIc11IzBlR9wvvTIJZeL0g33Fs=",
|
"narHash": "sha256-AHxFfIu73SpNLAOZbu/AvpLhZ/Szhx6gRPj9ufZtaZA=",
|
||||||
"owner": "Mic92",
|
"owner": "Mic92",
|
||||||
"repo": "sops-nix",
|
"repo": "sops-nix",
|
||||||
"rev": "3f66a7fb9626a9a9c077612ef10a0ce396286c7d",
|
"rev": "4e7d74d92398b933cc0e0e25af5b0836efcfdde3",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
|
|
||||||
|
|
@ -9,6 +9,10 @@
|
||||||
imports = [
|
imports = [
|
||||||
../../modules/dconf.nix # TODO: Only enable when on Gnome?
|
../../modules/dconf.nix # TODO: Only enable when on Gnome?
|
||||||
../../modules/git.nix
|
../../modules/git.nix
|
||||||
|
(import ../../modules/taskwarrior.nix {
|
||||||
|
inherit config;
|
||||||
|
inherit pkgs;
|
||||||
|
})
|
||||||
];
|
];
|
||||||
|
|
||||||
home.stateVersion = "25.05";
|
home.stateVersion = "25.05";
|
||||||
|
|
|
||||||
|
|
@ -31,11 +31,11 @@ with pkgs;
|
||||||
pnpm
|
pnpm
|
||||||
ripgrep
|
ripgrep
|
||||||
silver-searcher
|
silver-searcher
|
||||||
|
sops
|
||||||
sshfs
|
sshfs
|
||||||
stylelint
|
stylelint
|
||||||
svelte-language-server
|
svelte-language-server
|
||||||
tailwindcss-language-server
|
tailwindcss-language-server
|
||||||
taskwarrior3
|
|
||||||
tldr
|
tldr
|
||||||
tmux
|
tmux
|
||||||
tmuxp
|
tmuxp
|
||||||
|
|
|
||||||
|
|
@ -0,0 +1,51 @@
|
||||||
|
{
|
||||||
|
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 = "${builtins.readFile config.sops.secrets."taskwarrior_sync_server_url".path}";
|
||||||
|
# server.client_id = "${builtins.readFile
|
||||||
|
# config.sops.secrets."taskwarrior_sync_server_client_id".path
|
||||||
|
# }";
|
||||||
|
# encryption_secret = "${builtins.readFile
|
||||||
|
# config.sops.secrets."taskwarrior_sync_encryption_secret".path
|
||||||
|
# }";
|
||||||
|
# };
|
||||||
|
recurrence = "off"; # TODO: enable only on andromache
|
||||||
|
};
|
||||||
|
extraConfig = "include ${config.sops.templates."taskrc.d/sync".path}";
|
||||||
|
};
|
||||||
|
}
|
||||||
|
|
@ -11,6 +11,7 @@
|
||||||
|
|
||||||
imports = [
|
imports = [
|
||||||
inputs.disko.nixosModules.disko
|
inputs.disko.nixosModules.disko
|
||||||
|
inputs.sops-nix.nixosModules.sops
|
||||||
inputs.home-manager.nixosModules.default
|
inputs.home-manager.nixosModules.default
|
||||||
./hard.nix
|
./hard.nix
|
||||||
../../modules/bootloader.nix
|
../../modules/bootloader.nix
|
||||||
|
|
@ -30,6 +31,30 @@
|
||||||
../../modules/ssh/hardened-openssh.nix
|
../../modules/ssh/hardened-openssh.nix
|
||||||
];
|
];
|
||||||
|
|
||||||
|
sops = {
|
||||||
|
validateSopsFiles = false;
|
||||||
|
defaultSopsFile = "${builtins.toString inputs.nix-secrets}/secrets.yaml";
|
||||||
|
defaultSopsFormat = "yaml";
|
||||||
|
age.keyFile = "/home/h/.config/sops/age/keys.txt";
|
||||||
|
|
||||||
|
secrets = {
|
||||||
|
"test" = { };
|
||||||
|
|
||||||
|
"taskwarrior_sync_server_url".owner = config.users.users.h.name;
|
||||||
|
"taskwarrior_sync_server_client_id".owner = config.users.users.h.name;
|
||||||
|
"taskwarrior_sync_encryption_secret".owner = config.users.users.h.name;
|
||||||
|
};
|
||||||
|
|
||||||
|
templates."taskrc.d/sync" = {
|
||||||
|
owner = config.users.users.h.name;
|
||||||
|
content = ''
|
||||||
|
sync.server.url=${config.sops.placeholder."taskwarrior_sync_server_url"}
|
||||||
|
sync.server.client_id=${config.sops.placeholder."taskwarrior_sync_server_client_id"}
|
||||||
|
sync.encryption_secret=${config.sops.placeholder."taskwarrior_sync_encryption_secret"}
|
||||||
|
'';
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
environment.systemPackages = [ inputs.nvim.packages.x86_64-linux.nvim ];
|
environment.systemPackages = [ inputs.nvim.packages.x86_64-linux.nvim ];
|
||||||
|
|
||||||
nix.settings.experimental-features = [
|
nix.settings.experimental-features = [
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue