nixos

NixOS server files. Mirror from https://git.nordgedanken.dev/kubernetes/nixos
git clone git://archive.git.mtrnord.blog/MTRNord/nixos.git
Log | Files | Refs | README

commit 34fea301c4528af7aa3b4252ac94821a613db91d
parent 8a3c51c29d0c8e9394080186562fca9639817c7a
Author: MTRNord <mtrnord1@gmail.com>
Date:   Fri, 27 Oct 2023 20:46:42 +0200

Prepare personal discourse space

Diffstat:
Anixos/common/lib/personal_discourse.nix | 79+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Mnixos/worker-2/configuration.nix | 1+
2 files changed, 80 insertions(+), 0 deletions(-)

diff --git a/nixos/common/lib/personal_discourse.nix b/nixos/common/lib/personal_discourse.nix @@ -0,0 +1,79 @@ +{ inputs, lib, pkgs, config, ... }: +{ + services.discourse = { + package = inputs.nixpkgs-discourse.legacyPackages.${pkgs.system}.discourse; + enable = true; + database = { + host = "postgres.internal.midnightthoughts.space"; + passwordFile = config.sops.secrets."discourse/db_password".path; + }; + backendSettings = { + db_port = 5000; + }; + secretKeyBaseFile = config.sops.secrets."discourse/secret_key_base".path; + mail = { + outgoing = { + port = 465; + serverAddress = "mail.nordgedanken.dev"; + username = "support@miki.community"; + passwordFile = config.sops.secrets."discourse/mail_password".path; + authentication = "login"; + forceTLS = true; + }; + incoming.enable = false; + contactEmailAddress = "support@miki.community"; + }; + redis = { + host = "localhost"; + }; + hostname = "personal.midnightthoughts.space"; + plugins = with config.services.discourse.package.plugins; [ + discourse-github + discourse-solved + discourse-docs + discourse-calendar + discourse-github + discourse-assign + discourse-solved + discourse-chat-integration + discourse-data-explorer + pkgs.discourse-footnote + pkgs.discourse-gamification + pkgs.discourse-cakeday + pkgs.discourse-templates + #pkgs.discourse-spoiler-alert + ]; + siteSettings = { + required = { + title = "MTRNords personal space"; + contact_email = "support@miki.community"; + notification_email = "noreply@forum.miki.community"; + }; + login = { + login_required = true; + must_approve_users = true; + enable_local_logins = true; + enable_local_logins_via_email = true; + allow_new_registrations = false; + }; + spam = { + notify_mods_when_user_silenced = true; + }; + legal = { + tos_url = "https://docs.draupnir.midnightthoughts.space/docs/code_of_conduct/"; + }; + plugins = { + calendar_enabled = true; + chat_enabled = false; + }; + }; + admin = { + username = "MTRNord"; + fullName = "Marcel"; + email = "mtrnord@nordgedanken.dev"; + passwordFile = config.sops.secrets."discourse/admin_password".path; + }; + }; + + systemd.services.discourse.environment = { UNICORN_WORKERS = "8"; }; +} diff --git a/nixos/worker-2/configuration.nix b/nixos/worker-2/configuration.nix @@ -34,6 +34,7 @@ in ../common/lib/fail2ban.nix ../common/lib/podman.nix ../common/lib/pdns.nix + ../common/lib/personal_discourse.nix ./kubernetes.nix ];