🔧 migrate to taskwarrior 3
This commit is contained in:
parent
c03727fd80
commit
e619cc2dab
6 changed files with 49 additions and 35 deletions
|
@ -142,7 +142,7 @@
|
|||
inherit (pkgs) lib;
|
||||
machineDir = ./machines;
|
||||
};
|
||||
zerotierDeviceName = "ztbn67ogn2";
|
||||
zerotierInterface = "ztbn67ogn2";
|
||||
components = ./components;
|
||||
features = ./features;
|
||||
};
|
||||
|
|
|
@ -42,7 +42,10 @@ let
|
|||
valueType;
|
||||
};
|
||||
|
||||
taskwarrior-tui = pkgs.legacy_2311.taskwarrior-tui;
|
||||
#taskwarrior-tui = pkgs.legacy_2311.taskwarrior-tui;
|
||||
taskwarrior-tui = pkgs.taskwarrior-tui;
|
||||
|
||||
taskwarrior = pkgs.taskwarrior3;
|
||||
|
||||
in
|
||||
|
||||
|
@ -87,28 +90,28 @@ in
|
|||
|
||||
config = mkIf config.gui.enable {
|
||||
|
||||
home.packages = with pkgs; [
|
||||
home.packages = [
|
||||
|
||||
taskwarrior
|
||||
taskwarrior-tui
|
||||
|
||||
timewarrior
|
||||
tasksh
|
||||
taskwarrior-hooks
|
||||
(pkgs.writeShellScriptBin "tsak" ''${pkgs.taskwarrior}/bin/task "$@"'')
|
||||
pkgs.timewarrior
|
||||
pkgs.tasksh
|
||||
pkgs.taskwarrior-hooks
|
||||
(pkgs.writeShellScriptBin "tsak" ''${taskwarrior}/bin/task "$@"'')
|
||||
|
||||
vit
|
||||
pkgs.vit
|
||||
(pkgs.writers.writeBashBin "active" "${taskwarrior-tui}/bin/taskwarrior-tui -r active")
|
||||
(pkgs.writers.writeBashBin "todo" "${taskwarrior-tui}/bin/taskwarrior-tui -r todo")
|
||||
|
||||
(pkgs.writers.writeBashBin "calendar" ''
|
||||
${pkgs.taskwarrior}/bin/task calendar
|
||||
${pkgs.taskwarrior}/bin/task calendar_report
|
||||
${taskwarrior}/bin/task calendar
|
||||
${taskwarrior}/bin/task calendar_report
|
||||
'')
|
||||
|
||||
# todo : belongs to calendar.nix
|
||||
vdirsyncer
|
||||
khal
|
||||
pkgs.vdirsyncer
|
||||
pkgs.khal
|
||||
(pkgs.writers.writeBashBin "kalendar" ''
|
||||
${pkgs.vdirsyncer}/bin/vdirsyncer sync
|
||||
${pkgs.khal}/bin/ikhal
|
||||
|
|
|
@ -25,32 +25,37 @@ in
|
|||
# local
|
||||
commands.service2 = {
|
||||
source = "zroot/services2";
|
||||
target = "zraid/mirror/services2"; # should not be created up front!
|
||||
target = "zraid/mirror/services2"; # should NOT be created up front!
|
||||
};
|
||||
commands.paperless = {
|
||||
source = "zroot/paperless";
|
||||
target = "zraid/mirror/paperless"; # should not be created up front!
|
||||
target = "zraid/mirror/paperless"; # should NOT be created up front!
|
||||
};
|
||||
commands.postgresql = {
|
||||
source = "zroot/postgresql";
|
||||
target = "zraid/mirror/postgresql"; # should not be created up front!
|
||||
target = "zraid/mirror/postgresql"; # should NOT be created up front!
|
||||
};
|
||||
|
||||
# remote
|
||||
commands.matrix-terranix = {
|
||||
sshKey = "/run/facts/ssh.syncoid.id_ed25519";
|
||||
source = "root@orbi.${tld}:zroot/matrix-terranix";
|
||||
target = "zraid/mirror/matrix-terranix"; # should not be created up front!
|
||||
target = "zraid/mirror/matrix-terranix"; # should NOT be created up front!
|
||||
};
|
||||
commands.nextcloud = {
|
||||
sshKey = "/run/facts/ssh.syncoid.id_ed25519";
|
||||
source = "root@orbi.${tld}:zroot/nextcloud";
|
||||
target = "zraid/mirror/nextcloud"; # should not be created up front!
|
||||
target = "zraid/mirror/nextcloud"; # should NOT be created up front!
|
||||
};
|
||||
commands.photoprism = {
|
||||
sshKey = "/run/facts/ssh.syncoid.id_ed25519";
|
||||
source = "root@orbi.${tld}:zmedia/photoprism";
|
||||
target = "zraid/mirror/photoprism"; # should not be created up front!
|
||||
target = "zraid/mirror/photoprism"; # should NOT be created up front!
|
||||
};
|
||||
commands.taskchampion = {
|
||||
sshKey = "/run/facts/ssh.syncoid.id_ed25519";
|
||||
source = "root@orbi.${tld}:zroot/taskchampion";
|
||||
target = "zraid/mirror/taskchampion"; # should NOT be created up front!
|
||||
};
|
||||
commonArgs = [
|
||||
# Does not create new snapshot, only transfers existing
|
||||
|
|
|
@ -22,7 +22,7 @@
|
|||
# ./service-surrealdb.nix # not really needed at the moment
|
||||
./service-taskserver.nix
|
||||
./service-vaultwarden.nix
|
||||
./service-vikunja.nix
|
||||
# ./service-vikunja.nix
|
||||
./service-wastebin.nix
|
||||
|
||||
./nginx-ingolf-wagner-de.nix
|
||||
|
@ -45,6 +45,8 @@
|
|||
|
||||
];
|
||||
|
||||
networking.firewall.enable = true;
|
||||
|
||||
services.logrotate.checkConfig = false; # because uid 3000 does not exist in here
|
||||
|
||||
networking.hostName = "orbi";
|
||||
|
|
|
@ -137,6 +137,19 @@ in
|
|||
#"com.sun:auto-snapshot:monthly" = toString true;
|
||||
};
|
||||
};
|
||||
"taskchampion" = {
|
||||
type = "zfs_fs";
|
||||
mountpoint = config.services.taskchampion-sync-server.dataDir;
|
||||
# "/var/lib/taskchampion-sync-server";
|
||||
options = {
|
||||
mountpoint = "legacy";
|
||||
compression = "lz4";
|
||||
"com.sun:auto-snapshot:hourly" = toString true;
|
||||
"com.sun:auto-snapshot:daily" = toString true;
|
||||
#"com.sun:auto-snapshot:weekly" = toString true;
|
||||
#"com.sun:auto-snapshot:monthly" = toString true;
|
||||
};
|
||||
};
|
||||
"vikunja" = {
|
||||
type = "zfs_fs";
|
||||
mountpoint = "/var/lib/nixos-containers/vikunja";
|
||||
|
|
|
@ -2,26 +2,17 @@
|
|||
config,
|
||||
lib,
|
||||
pkgs,
|
||||
zerotierInterface,
|
||||
...
|
||||
}:
|
||||
{
|
||||
|
||||
# todo: backup taskserver via zfs syncoid
|
||||
services.taskserver = {
|
||||
networking.firewall.interfaces.wg0.allowedTCPPorts = [ config.services.taskchampion-sync-server.port ];
|
||||
networking.firewall.interfaces.wg0.allowedUDPPorts = [ config.services.taskchampion-sync-server.port ];
|
||||
|
||||
services.taskchampion-sync-server = {
|
||||
enable = true;
|
||||
fqdn = "taskd.ingolf-wagner.de";
|
||||
listenHost = "0.0.0.0";
|
||||
requestLimit = 104857600;
|
||||
trust = "strict";
|
||||
dataDir = "/var/lib/taskserver";
|
||||
organisations."1337".users = [
|
||||
"palo"
|
||||
"beta"
|
||||
];
|
||||
ciphers = "SECURE256";
|
||||
openFirewall = false;
|
||||
};
|
||||
|
||||
networking.firewall.allowedTCPPorts = [ config.services.taskserver.listenPort ];
|
||||
networking.firewall.allowedUDPPorts = [ config.services.taskserver.listenPort ];
|
||||
|
||||
}
|
||||
|
|
Loading…
Reference in a new issue