diff options
| author | Mel <mel@rnrd.eu> | 2026-08-16 20:27:36 +0200 |
|---|---|---|
| committer | Mel <mel@rnrd.eu> | 2026-09-05 20:06:01 +0200 |
| commit | fa49e4a5d8ec8287fbd51046c26a84e8c99a4ec5 (patch) | |
| tree | aecc4a141396f1f19e11703c9b8b658fb7325b7c /machines/renne/default.nix | |
| parent | 72083343b49c35c3098e5b239d8e407cf581660a (diff) | |
| download | network-fa49e4a5d8ec8287fbd51046c26a84e8c99a4ec5.tar.zst network-fa49e4a5d8ec8287fbd51046c26a84e8c99a4ec5.zip | |
Move out Renard configuration as Renne
Signed-off-by: Mel <mel@rnrd.eu>
Diffstat (limited to 'machines/renne/default.nix')
| -rw-r--r-- | machines/renne/default.nix | 109 |
1 files changed, 109 insertions, 0 deletions
diff --git a/machines/renne/default.nix b/machines/renne/default.nix new file mode 100644 index 0000000..8473613 --- /dev/null +++ b/machines/renne/default.nix @@ -0,0 +1,109 @@ +{ me, machines, ... }: + +{ + imports = [ + ../../modules/common.nix + + ./hardware.nix + ./devices.nix + + ../../services/minecraft.nix + ]; + + foundation = { + www = { + enable = true; + + public = true; + tailnet = true; + }; + + monitoring = { + client.enable = true; + + services = [ + "base" + "tailnet" + "mel" + "shorest" + ]; + }; + }; + + services.nginx.virtualHosts = { + base.locations = { + "/stuff/" = { + alias = "/var/www/html/"; + }; + + # redirect to akkoma on lapin + "/.well-known/webfinger" = { + return = "301 https://soc.rnrd.eu$request_uri"; + }; + + # delegate matrix to subdomain `matrix.rnrd.eu` + "/.well-known/matrix/server" = { + return = "200 '{ \"m.server\": \"matrix.rnrd.eu:443\" }'"; + extraConfig = '' + default_type application/json; + ''; + }; + "/.well-known/matrix/client" = { + return = '' + 200 '{ + "m.homeserver": { + "base_url": "https://matrix.rnrd.eu/" + }, + "org.matrix.msc3575.proxy": { + "url": "https://matrix.rnrd.eu/" + } + }' + ''; + extraConfig = '' + default_type application/json; + add_header "Access-Control-Allow-Origin" *; + ''; + }; + }; + + "sho.rest" = { + enableACME = true; + forceSSL = true; + locations."/" = { + proxyPass = "http://127.0.0.1:5000"; + }; + extraConfig = '' + access_log /var/log/nginx/shorest.access.log json_combined; + ''; + }; + + "mel.gg" = { + enableACME = true; + forceSSL = true; + root = "/srv/mel"; + extraConfig = '' + access_log /var/log/nginx/mel.access.log json_combined; + ''; + }; + + "catskill.dev" = { + enableACME = true; + forceSSL = true; + root = "/srv/catskill"; + extraConfig = '' + access_log /var/log/nginx/catskill.access.log json_combined; + ''; + }; + + "moth.run" = { + enableACME = true; + forceSSL = true; + root = "/srv/moth"; + extraConfig = '' + access_log /var/log/nginx/moth.access.log json_combined; + ''; + }; + }; + + system.stateVersion = "24.05"; +} |
