From db51563de7bfd951e217202a73b00f03d3dd6819 Mon Sep 17 00:00:00 2001 From: Oliver Davies Date: Sat, 1 Nov 2025 10:59:04 +0000 Subject: [PATCH] Remove Mastodon --- hosts/nixedo/services/default.nix | 1 - hosts/nixedo/services/mastodon.nix | 84 ------------------------------ 2 files changed, 85 deletions(-) delete mode 100644 hosts/nixedo/services/mastodon.nix diff --git a/hosts/nixedo/services/default.nix b/hosts/nixedo/services/default.nix index b5a19f88..a0d1900a 100644 --- a/hosts/nixedo/services/default.nix +++ b/hosts/nixedo/services/default.nix @@ -8,7 +8,6 @@ { imports = [ ./homepage - ./mastodon.nix ./mealie.nix ./samba.nix ./uptime-kuma.nix diff --git a/hosts/nixedo/services/mastodon.nix b/hosts/nixedo/services/mastodon.nix deleted file mode 100644 index d020a223..00000000 --- a/hosts/nixedo/services/mastodon.nix +++ /dev/null @@ -1,84 +0,0 @@ -{ config, lib, ... }: - -with lib; - -let - cfg = config.homelab.services.${service}; - domain = "oliverdavies.uk"; - service = "mastodon"; -in -{ - options.homelab.services.${service} = { - url = mkOption { - default = "social.${domain}"; - internal = true; - type = types.str; - }; - }; - - config = { - services = { - ${service} = { - enable = false; - - configureNginx = false; - localDomain = domain; - streamingProcesses = 3; - - extraConfig = { - SINGLE_USER_MODE = "true"; - WEB_DOMAIN = cfg.url; - }; - - smtp = { - fromAddress = "social@${domain}"; - }; - }; - - cloudflared.tunnels.${config.homelab.cloudflared.tunnelId} = { - ingress = { - "${cfg.url}" = "http://localhost"; - }; - }; - - nginx = { - upstreams.mastodon-streaming = { - extraConfig = '' - least_conn; - ''; - - servers = builtins.listToAttrs ( - map (i: { - name = "unix:/run/mastodon-streaming/streaming-${toString i}.socket"; - value = { }; - }) (range 1 config.services.mastodon.streamingProcesses) - ); - }; - - virtualHosts."social.oliverdavies.uk" = { - root = "${config.services.mastodon.package}/public/"; - - locations = { - "/".tryFiles = "$uri @proxy"; - - "/api/v1/streaming/" = { - proxyPass = "http://mastodon-streaming"; - proxyWebsockets = true; - }; - - "/system/".alias = "/var/lib/mastodon/public-system/"; - - "@proxy" = { - proxyPass = "http://unix:/run/mastodon-web/web.socket"; - proxyWebsockets = true; - }; - }; - - extraConfig = '' - client_max_body_size 100m; - ''; - }; - }; - }; - }; -}