blob: cb7004d7f8a323db2d932cee24e9cdce8efe9973 [file] [log] [blame]
Skyler Grey2ca6ccd2023-10-14 22:56:43 +00001{ pkgs, helpers, config, lib, ... }: {
2 clicks.nginx.services = with helpers.nginx; [
Skyler Grey3c24fc02024-04-19 23:39:39 +00003 (Host "guide.trans.gg" (Compose [
4 # PWA Manifest
5 (Path "/_assets/manifest.json"
6 (File ./nginx/guide.trans.gg/_assets/manifest.json))
7 # Browser Config
8 (Path "/_assets/favicons/browserconfig.xml"
9 (File ./nginx/guide.trans.gg/_assets/favicons/browserconfig.xml))
10
11 # Android Favicons
12 (Path "/_assets/favicons/android-chrome-192x192.png"
13 (File ./nginx/guide.trans.gg/_assets/favicons/android-chrome-192x192.png))
14 (Path "/_assets/favicons/android-chrome-256x256.png"
15 (File ./nginx/guide.trans.gg/_assets/favicons/android-chrome-256x256.png))
16
17 # Web Favicons
18 (Path "/_assets/favicons/favicon-16x16.png"
19 (File ./nginx/guide.trans.gg/_assets/favicons/favicon-16x16.png))
20 (Path "/_assets/favicons/favicon-32x32.png"
21 (File ./nginx/guide.trans.gg/_assets/favicons/favicon-32x32.png))
22 (Path "/_assets/favicons/mstile-150x150.png"
23 (File ./nginx/guide.trans.gg/_assets/favicons/mstile-150x150.png))
24
25 # iOS Favicons
26 (Path "/_assets/favicons/apple-touch-icon.png"
27 (File ./nginx/guide.trans.gg/_assets/favicons/apple-touch-icon.png))
28 (Path "/_assets/favicons/safari-pinned-tab.svg"
29 (File ./nginx/guide.trans.gg/_assets/favicons/safari-pinned-tab.svg))
30
31 (ReverseProxy "generic:1035")
32 ]))
TheCodedProfaf044562023-10-22 20:04:27 -040033 (Host "signup.hopescaramels.com" (ReverseProxy "caramels:1024"))
TheCodedProf1381cee2023-10-22 20:04:27 -040034 (Host "freeflowtaekwondo.com" (ReverseProxy "generic:1026"))
Skyler Grey18861122023-10-25 21:05:54 +000035 (Host "homebridge.coded.codes" (ReverseProxy "CodedPi:8581"))
36 (Host "codedpc.coded.codes" (ReverseProxy "SamuelDesktop:3389"))
37 (Host "testing.coded.codes" (ReverseProxy "SamuelDesktop:3000"))
Skyler Grey22428b02023-11-19 13:20:56 +000038 (Host "clicks.codes" (Compose [
39 (Path "/.well-known/matrix/"
Skyler Grey0de8a082023-11-21 22:45:29 +000040 (CrossOrigin (File ./nginx/clicks.codes/.well-known/matrix)))
Skyler Grey22428b02023-11-19 13:20:56 +000041 (ReverseProxy "127.0.0.1:3000")
42 ]))
Samuel Shuert50bbc8f2024-04-27 16:32:32 -040043 (Host "resume.thecoded.prof" (Directory "/var/www/thecoded.prof/sites/resume/dist/"))
44 (Host "thecoded.prof" (Directory "/var/www/thecoded.prof/sites/main/dist/"))
Skyler Grey82e09422024-03-10 14:11:44 +000045 (Hosts [ "vaultwarden.clicks.codes" ] (ReverseProxy "generic:1028"))
46 (Hosts [ "passwords.clicks.codes" ] (RedirectPermanent "https://vaultwarden.clicks.codes"))
Skyler Grey0ad45622024-04-18 10:40:44 +000047 (Host "cloud.clicks.codes" (Path ''~ ^/?([^\r\n]*)$'' (RedirectPermanent "https://nextcloud.clicks.codes/$1")))
Skyler Greyfc048592024-03-10 13:46:17 +000048 (Hosts [
49 "erpnext.clicks.codes"
50 "projects.clicks.codes"
51 "tasks.clicks.codes"
52 "issues.clicks.codes"
53 "kanban.clicks.codes"
54 "taiga.clicks.codes"
55 ] (Redirect "https://frappe.clicks.codes/app"))
Skyler Grey8720ed12024-03-10 13:59:44 +000056 (Hosts [
57 "wiki.clicks.codes"
58 ] (Redirect "https://frappe.clicks.codes/wiki"))
Skyler Greyd550aab2023-10-22 22:57:50 +000059 (Host "login.clicks.codes" (ReverseProxy "127.0.0.1:9083"))
Skyler Grey2ca6ccd2023-10-14 22:56:43 +000060 (Hosts [ "gerrit.clicks.codes" "git.clicks.codes" ]
Skyler Grey22428b02023-11-19 13:20:56 +000061 (ReverseProxy "generic:1024"))
Skyler Grey2ca6ccd2023-10-14 22:56:43 +000062 (Hosts [ "grafana.clicks.codes" "logs.clicks.codes" ]
Skyler Greyd550aab2023-10-22 22:57:50 +000063 (ReverseProxy "127.0.0.1:9052"))
Skyler Grey2ca6ccd2023-10-14 22:56:43 +000064 (InsecureHosts [
65 "mail.clicks.codes"
66 "mail.coded.codes"
67 "mail.hopescaramels.com"
68 "autoconfig.coded.codes"
69 "autoconfig.clicks.codes"
70 "autoconfig.hopescaramels.com"
71 "imap.coded.codes"
72 "imap.clicks.codes"
73 "imap.hopescaramels.com"
74 "pop.coded.codes"
75 "pop.clicks.codes"
76 "pop.hopescaramels.com"
77 "smtp.coded.codes"
78 "smtp.clicks.codes"
79 "smtp.hopescaramels.com"
Skyler Grey22428b02023-11-19 13:20:56 +000080 ] (ReverseProxy "generic:1026"))
Skyler Grey58fbb972023-12-23 02:39:35 +000081 (Hosts [
82 "calibre.coded.codes"
83 "books.coded.codes"
84 "reading.coded.codes"
85 "calibre.thecoded.prof"
86 "books.thecoded.prof"
87 "reading.thecoded.prof"
88 ] (ReverseProxy "generic:1032"))
Skyler Grey22428b02023-11-19 13:20:56 +000089 (Hosts ["matrix.clicks.codes" "matrix.coded.codes"] (Directory "${builtins.toString
Skyler Grey1ea7dbd2023-12-23 00:08:32 +000090 (pkgs.element-web.override {
Skyler Greyfe1740c2023-10-21 01:24:18 +000091 conf = {
92 default_server_config =
Skyler Grey22428b02023-11-19 13:20:56 +000093 lib.pipe ./nginx/clicks.codes/.well-known/matrix [
Skyler Greyfe1740c2023-10-21 01:24:18 +000094 builtins.readFile
95 builtins.fromJSON
96 ];
97 features = {
98 feature_report_to_moderators = true;
99 feature_latex_maths = true;
100 feature_pinning = true;
101 feature_mjolnir = true;
102 feature_presence_in_room_list = true;
103 feature_custom_themes = true;
104 feature_dehydration = true;
105 };
Skyler Grey1ea7dbd2023-12-23 00:08:32 +0000106 setting_defaults = {
107 "fallbackICEServerAllowed" = true;
108 "UIFeature.passwordReset" = false;
109 "UIFeature.deactivate" = false;
110 };
111 show_labs_settings = true;
Skyler Greyfe1740c2023-10-21 01:24:18 +0000112 default_theme = "dark";
Skyler Greyfe1740c2023-10-21 01:24:18 +0000113 disable_guests = true;
114 disable_3pid_login = true;
Skyler Grey1ea7dbd2023-12-23 00:08:32 +0000115 logout_redirect_url = "https://login.clicks.codes/realms/master/protocol/openid-connect/logout?client_id=matrix";
116 sso_redirect_options.immediate = true;
Skyler Grey2ca6ccd2023-10-14 22:56:43 +0000117 };
Skyler Greyfe1740c2023-10-21 01:24:18 +0000118 })}"))
119 (Host "api.clicks.codes"
Skyler Greyd550aab2023-10-22 22:57:50 +0000120 (Path "/nucleus/" (ReverseProxy "127.0.0.1:10000")))
Skyler Greyfe1740c2023-10-21 01:24:18 +0000121 (Host "api.coded.codes"
Skyler Grey18861122023-10-25 21:05:54 +0000122 (Path "/nucleus/" (ReverseProxy "SamuelDesktop:10000")))
Skyler Grey2ca6ccd2023-10-14 22:56:43 +0000123 (Host "coded.codes" (Compose [
Skyler Greyfe1740c2023-10-21 01:24:18 +0000124 (Path "/.well-known/matrix/"
Skyler Grey0de8a082023-11-21 22:45:29 +0000125 (CrossOrigin (File ./nginx/clicks.codes/.well-known/matrix)))
Skyler Grey2ca6ccd2023-10-14 22:56:43 +0000126 (Redirect "https://clicks.codes$request_uri")
127 ]))
Skyler Grey75aa9492023-11-21 00:29:09 +0000128 (Hosts ["matrix-backend.clicks.codes" "matrix-backend.coded.codes"] (Compose [
Skyler Grey2ca6ccd2023-10-14 22:56:43 +0000129 (Path "/_synapse/admin/" (Status 403))
Skyler Grey7610ce42023-11-29 19:29:59 +0000130 (ReverseProxy "generic:1030")
Skyler Grey2ca6ccd2023-10-14 22:56:43 +0000131 ]))
Skyler Grey7610ce42023-11-29 19:29:59 +0000132 (Hosts ["matrix-sliding-sync.clicks.codes" "matrix-sliding-sync.coded.codes"]
133 (ReverseProxy "generic:1031"))
Skyler Grey2ca6ccd2023-10-14 22:56:43 +0000134 ];
135 clicks.nginx.serviceAliases = with helpers.nginx; [
136 (Aliases "nextcloud.clicks.codes" [
Skyler Greye15f5aa2023-10-25 17:13:43 +0000137 "www.nextcloud.clicks.codes"
Skyler Grey2ca6ccd2023-10-14 22:56:43 +0000138 ])
139 (Aliases "privatebin" [
140 "paste.clicks.codes"
141 "paste.coded.codes"
142 "paste.thecoded.prof"
143 "paste.hopescaramels.com"
Skyler Greye15f5aa2023-10-25 17:13:43 +0000144 "www.paste.clicks.codes"
145 "www.paste.coded.codes"
146 "www.paste.thecoded.prof"
147 "www.paste.hopescaramels.com"
148 "www.privatebin.clicks.codes"
Skyler Grey2ca6ccd2023-10-14 22:56:43 +0000149 ])
150 ];
Skyler Grey2ca6ccd2023-10-14 22:56:43 +0000151}