Compare commits

..

2 commits

Author SHA1 Message Date
7d8085d60f
tsuki: init gotify desktop daemon
All checks were successful
ci/woodpecker/push/checks Pipeline was successful
2023-09-19 16:03:03 -04:00
9753030805
sora: init gotify 2023-09-19 16:02:44 -04:00
5 changed files with 32 additions and 0 deletions

View file

@ -2,5 +2,6 @@
imports = [ imports = [
./traefik.nix ./traefik.nix
./uptimekuma.nix ./uptimekuma.nix
./gotify.nix
]; ];
} }

View file

@ -0,0 +1,7 @@
_: {
networking.firewall.allowedTCPPorts = [3000];
services.gotify = {
enable = true;
port = 3000;
};
}

View file

@ -32,6 +32,13 @@
tls.domains = [{main = "*.notohh.dev";}]; tls.domains = [{main = "*.notohh.dev";}];
tls.certresolver = "production"; tls.certresolver = "production";
}; };
gotify = {
rule = "Host(`gotify.notohh.dev`)";
entrypoints = ["websecure"];
service = "gotify";
tls.domains = [{main = "*.notohh.dev";}];
tls.certresolver = "production";
};
neko = { neko = {
rule = "Host(`neko.notohh.dev`)"; rule = "Host(`neko.notohh.dev`)";
entrypoints = ["websecure"]; entrypoints = ["websecure"];
@ -42,6 +49,7 @@
}; };
services = { services = {
uptime-kuma.loadBalancer.servers = [{url = "http://100.87.54.48:4000";}]; uptime-kuma.loadBalancer.servers = [{url = "http://100.87.54.48:4000";}];
gotify.loadBalancer.servers = [{url = "http://100.87.54.48:3000";}];
neko.loadBalancer.servers = [{url = "http://100.110.140.130:8080";}]; neko.loadBalancer.servers = [{url = "http://100.110.140.130:8080";}];
}; };
}; };

View file

@ -1,5 +1,6 @@
{...}: { {...}: {
imports = [ imports = [
./restic.nix ./restic.nix
./gotify-desktop.nix
]; ];
} }

View file

@ -0,0 +1,15 @@
{pkgs, ...}: {
systemd.services.gotify-desktop = {
enable = true;
wantedBy = [
"multi-user.target"
];
description = "Small Gotify daemon to send messages as desktop notifications";
serviceConfig = {
User = "notoh";
ExecStart = "${pkgs.gotify-desktop}/bin/gotify-desktop";
Restart = "always";
RestartSec = 30;
};
};
}