blob: 25ae8f8602c4a0bdd3bd464d8c3b71a8a01f6807 (
plain)
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
46
47
48
49
50
51
52
53
54
55
56
|
{ config, ... }:
{
services.ntfy-sh = {
enable = true;
settings = {
base-url = "https://ping.stuebinm.eu";
behind-proxy = true;
listen-http = "";
listen-unix = "/run/ntfy-sh/ntfy.sock";
listen-unix-mode = 511; ## lossy nix->yaml conversion eats octal literals (equal to 0777)
smtp-server-listen = ":25";
smtp-server-domain = "mail.stuebinm.eu";
auth-file = "/var/lib/ntfy-sh/user.db";
auth-default-access = "deny-all";
enable-signup = false;
visitor-email-limit-burst = 0;
};
};
networking.firewall.allowedTCPPorts = [ 25 ];
services.mollysocket = {
enable = true;
settings = {
allowed_endpoints = [ "https://ping.stuebinm.eu" ];
port = 8020;
host = "::";
};
environmentFile = "/run/secrets/mollysocket/config.toml";
};
sops.secrets."mollysocket/config.toml" = {};
services.nginx.virtualHosts."ping.stuebinm.eu" = {
enableACME = true;
forceSSL = true;
locations."/" = {
proxyPass = "http://unix:/run/ntfy-sh/ntfy.sock";
proxyWebsockets = true;
};
};
systemd.services.ntfy-sh = {
serviceConfig = {
RuntimeDirectory = [ "ntfy-sh" ];
};
};
environment.etc."ntfy/client.yml".text = ''
default-host: https://ping.stuebinm.eu
'';
}
|