diff --git a/configs/names.nix b/configs/names.nix new file mode 100644 index 0000000..bc45ed4 --- /dev/null +++ b/configs/names.nix @@ -0,0 +1,38 @@ +{ pkgs, lib, ... }: +let + port = 5703; + geogen = (pkgs.fetchFromGitHub { + owner = "kmein"; + repo = "scripts"; + rev = "c553c212efb04c300edf675c39a87fffd32d4def"; + sha256 = "0b5xjr7qqgvwc76pqr84p81svzk6nqr5pdvc6daw94rcgdy02mva"; + }) + "/onomastics"; + inherit (pkgs.callPackage geogen {}) dependencyEnv; +in +{ + systemd.services.names = { + wants = [ "network-online.target" ]; + wantedBy = [ "multi-user.target" ]; + description = "Better clone of geogen.stoepel.net"; + serviceConfig = { + DynamicUser = true; + }; + script = '' + cd $(mktemp -d) + ln -s "${geogen}/wsgi.py" wsgi.py + ${dependencyEnv}/bin/gunicorn wsgi:app -b :${toString port} + ''; + }; + + services.nginx = { + enable = true; + recommendedGzipSettings = true; + recommendedOptimisation = true; + recommendedProxySettings = true; + recommendedTlsSettings = true; + }; + + services.nginx.virtualHosts."names.kmein.r" = { + locations."/".proxyPass = "http://127.0.0.1:${toString port}"; + }; +} diff --git a/systems/makanek/configuration.nix b/systems/makanek/configuration.nix index 2d68fe0..68368e0 100644 --- a/systems/makanek/configuration.nix +++ b/systems/makanek/configuration.nix @@ -58,6 +58,7 @@ in +