1{
2 lib,
3 config,
4 ...
5}: {
6 options.mySnippets.aylac-top = {
7 cloudflareTunnel = lib.mkOption {
8 type = lib.types.str;
9 description = "Cloudflare Tunnel ID";
10 default = "efe3d484-102d-4c58-bb17-ceaede4d7a4f";
11 };
12
13 networkMap = lib.mkOption {
14 type = lib.types.attrs;
15 description = "Hostnames, ports, and vHosts for aylac.top services.";
16
17 default = {
18 forgejo = {
19 hostName = "nanpi";
20 port = 3001;
21 vHost = "git.aylac.top";
22 };
23
24 pds = {
25 hostName = "nanpi";
26 port = 3000;
27 vHost = "pds.aylac.top";
28 };
29
30 vaultwarden = {
31 hostName = "nanpi";
32 port = 8222;
33 vHost = "vault.aylac.top";
34 };
35
36 ntfy = {
37 hostName = "nanpi";
38 port = 9024;
39 vHost = "ntfy.aylac.top";
40 };
41
42 uptime-kuma = {
43 inherit (config.mySnippets.tailnet.networkMap.uptime-kuma) hostName;
44 inherit (config.mySnippets.tailnet.networkMap.uptime-kuma) port;
45 vHost = "status.aylac.top";
46 };
47
48 tangled-knot = {
49 hostName = "jezebel";
50 port = 5555;
51 vHost = "knot.aylac.top";
52 };
53
54 privatebin = {
55 hostName = "nanpi";
56 port = 7748;
57 vHost = "bin.aylac.top";
58 };
59 };
60 };
61 };
62}