diff options
author | Soispha <soispha@vhack.eu> | 2023-10-14 16:18:32 +0200 |
---|---|---|
committer | Soispha <soispha@vhack.eu> | 2023-10-14 16:34:14 +0200 |
commit | c77d2f4dbab0a30f2db60bf56501af6b7060085d (patch) | |
tree | 259dcc27c7ec0e9dac0072072ab0a93a8aecebb1 /system/services/nginx | |
parent | fix(system/services/redirects): disable ssl (diff) | |
download | nixos-server-c77d2f4dbab0a30f2db60bf56501af6b7060085d.tar.gz nixos-server-c77d2f4dbab0a30f2db60bf56501af6b7060085d.zip |
refactor(system/services/redirects): Move under the nginx directory
Diffstat (limited to '')
-rw-r--r-- | system/services/nginx/default.nix | 16 | ||||
-rw-r--r-- | system/services/nginx/redirects.nix | 6 |
2 files changed, 21 insertions, 1 deletions
diff --git a/system/services/nginx/default.nix b/system/services/nginx/default.nix index 8544475..cc633ed 100644 --- a/system/services/nginx/default.nix +++ b/system/services/nginx/default.nix @@ -1,5 +1,17 @@ {...}: let domains = import ./hosts.nix {}; + importedRedirects = import ./redirects.nix {}; + mkRedirect = { + key, + value, + }: { + name = key; + value = { + forceSSL = false; + enableACME = false; + locations."/".return = "301 ${value}"; + }; + }; mkVirtHost = { domain, root, @@ -27,6 +39,7 @@ virtHosts = builtins.listToAttrs (builtins.map mkVirtHost domains); nixSyncRepositories = builtins.listToAttrs (builtins.map mkNixSyncRepository domains); + redirects = builtins.listToAttrs (builtins.map mkRedirect importedRedirects); in { security.acme = { acceptTerms = true; @@ -41,7 +54,8 @@ in { }; services.nginx = { enable = true; - virtualHosts = virtHosts; + # The merge here is fine, as no domain should be specified twice + virtualHosts = virtHosts // redirects; }; services.nix-sync = { diff --git a/system/services/nginx/redirects.nix b/system/services/nginx/redirects.nix new file mode 100644 index 0000000..a021e72 --- /dev/null +++ b/system/services/nginx/redirects.nix @@ -0,0 +1,6 @@ +{...}: [ + { + key = "source.vhack.eu"; + value = "https://codeberg.org/vhack.eu/nixos-server"; + } +] |