From 0c9582499282c54740162299b1acdade89b622cf Mon Sep 17 00:00:00 2001 From: Joakim Repomaa Date: Mon, 4 Nov 2024 14:19:44 +0200 Subject: [PATCH] add gotosocial to freun.dev --- freun.dev/gotosocial.nix | 41 ++++++++++++++++++++++++++++++++++++++++ freun.dev/services.nix | 1 + 2 files changed, 42 insertions(+) create mode 100644 freun.dev/gotosocial.nix diff --git a/freun.dev/gotosocial.nix b/freun.dev/gotosocial.nix new file mode 100644 index 0000000..87a3c7d --- /dev/null +++ b/freun.dev/gotosocial.nix @@ -0,0 +1,41 @@ +{ config, ... }: +let + fqdn = "social.freun.dev"; + port = 3500; +in +{ + services.gotosocial = { + enable = true; + environmentFile = "/var/secrets/gotosocial.env"; + settings = { + host = "social.freun.dev"; + account-domain = "freun.dev"; + protocol = "https"; + bind-address = "localhost"; + instance-languages = [ "de" "fi" "en" ]; + instance-inject-mastodon-version = true; + accounts-registrations-open = true; + letsencrypt-enabled = false; + smtp-host = "horologium.uberspace.de"; + smtp-port = 587; + smtp-username = "noreply@freun.dev"; + smtp-from = "noreply@freun.dev"; + inherit port; + }; + setupPostgresqlDB = true; + }; + + services.caddy.virtualHosts = { + "freun.dev".extraConfig = '' + redir /.well-known/host-meta* https://${fqdn}{uri} permanent + redir /.well-known/webfinger* https://${fqdn}{uri} permanent + redir /.well-known/nodeinfo* https://${fqdn}{uri} permanent + ''; + + "${fqdn}".extraConfig = '' + reverse_proxy localhost:${toString config.services.gotosocial.settings.port} { + flush_interval -1 + } + ''; + }; +} diff --git a/freun.dev/services.nix b/freun.dev/services.nix index e4e9c3c..33d4ba0 100644 --- a/freun.dev/services.nix +++ b/freun.dev/services.nix @@ -38,5 +38,6 @@ ./hydra.nix ./tailscale.nix ./workout-tracker.nix + ./gotosocial.nix ]; }