1{
2 config,
3 lib,
4 ...
5}: {
6 options.mySnippets.tailnet = {
7 name = lib.mkOption {
8 default = "cinnamon-in.ts.net";
9 description = "Tailnet name.";
10 type = lib.types.str;
11 };
12
13 networkMap = lib.mkOption {
14 type = lib.types.attrs;
15 description = "Hostnames, ports, and vHosts for ${config.mySnippets.tailnet.name} services.";
16
17 default = {
18 qbittorrent = {
19 hostName = "nanpi";
20 port = 8080;
21 vHost = "qbittorrent.${config.mySnippets.tailnet.name}";
22 };
23
24 jellyfin = {
25 hostName = "nanpi";
26 port = 8096;
27 vHost = "jellyfin.${config.mySnippets.tailnet.name}";
28 };
29
30 #immich = {
31 # hostName = "nanpi";
32 # port = 2283;
33 # vHost = "immich.${config.mySnippets.tailnet.name}";
34 #};
35
36 radicale = {
37 hostName = "nanpi";
38 port = 5232;
39 vHost = "radicale.${config.mySnippets.tailnet.name}";
40 };
41
42 uptime-kuma = {
43 hostName = "jezebel";
44 port = 3008;
45 vHost = "uptime-kuma.${config.mySnippets.tailnet.name}";
46 };
47
48 webdav = {
49 hostName = "nanpi";
50 port = 4918;
51 vHost = "webdav.${config.mySnippets.tailnet.name}";
52 };
53
54 glance = {
55 hostName = "nanpi";
56 port = 9090;
57 vHost = "glance.${config.mySnippets.tailnet.name}";
58 };
59
60 bazarr = {
61 hostName = "nanpi";
62 port = 6767;
63 vHost = "bazarr.${config.mySnippets.tailnet.name}";
64 };
65
66 #lidarr = {
67 # hostName = "nanpi";
68 # port = 8686;
69 # vHost = "lidarr.${config.mySnippets.tailnet.name}";
70 #};
71
72 prowlarr = {
73 hostName = "nanpi";
74 port = 9696;
75 vHost = "prowlarr.${config.mySnippets.tailnet.name}";
76 };
77
78 radarr = {
79 hostName = "nanpi";
80 port = 7878;
81 vHost = "radarr.${config.mySnippets.tailnet.name}";
82 };
83
84 sonarr = {
85 hostName = "nanpi";
86 port = 8989;
87 vHost = "sonarr.${config.mySnippets.tailnet.name}";
88 };
89
90 autobrr = {
91 hostName = "nanpi";
92 port = 7474;
93 vHost = "autobrr.${config.mySnippets.tailnet.name}";
94 };
95
96 karakeep = {
97 hostName = "nanpi";
98 port = 7020;
99 vHost = "karakeep.${config.mySnippets.tailnet.name}";
100 };
101
102 copyparty = {
103 hostName = "nanpi";
104 port = 3210;
105 vHost = "copyparty.${config.mySnippets.tailnet.name}";
106 };
107
108 redlib = {
109 hostName = "nanpi";
110 port = 6605;
111 vHost = "redlib.${config.mySnippets.tailnet.name}";
112 };
113
114 miniflux = {
115 hostName = "nanpi";
116 port = 6540;
117 vHost = "miniflux.${config.mySnippets.tailnet.name}";
118 };
119
120 jellyseerr = {
121 hostName = "nanpi";
122 port = 5055;
123 vHost = "jellyseerr.${config.mySnippets.tailnet.name}";
124 };
125
126 audiobookshelf = {
127 hostName = "nanpi";
128 port = 13378;
129 vHost = "audiobookshelf.${config.mySnippets.tailnet.name}";
130 };
131 };
132 };
133 };
134}