diff --git a/modules/nixos/server/binary-cache/default.nix b/modules/nixos/server/binary-cache/default.nix new file mode 100644 index 0000000..fcf4bd3 --- /dev/null +++ b/modules/nixos/server/binary-cache/default.nix @@ -0,0 +1,24 @@ +{ + lib, + config, + ... +}: let + cfg = config.services.nix-serve; +in + with lib; { + config = mkIf cfg.enable { + services = { + nix-serve = { + secretKeyFile = "/var/cache-priv-key.pem"; + }; + nginx = { + virtualHosts = { + # ... existing hosts config etc. ... + "binarycache.odie.intranet" = { + locations."/".proxyPass = "http://${config.services.nix-serve.bindAddress}:${toString config.services.nix-serve.port}"; + }; + }; + }; + }; + }; + } diff --git a/modules/nixos/server/default.nix b/modules/nixos/server/default.nix new file mode 100644 index 0000000..81cef16 --- /dev/null +++ b/modules/nixos/server/default.nix @@ -0,0 +1,6 @@ +{ + imports = [ + ./nginx + ./binary-cache + ]; +} diff --git a/modules/nixos/server/nginx/default.nix b/modules/nixos/server/nginx/default.nix new file mode 100644 index 0000000..26755ef --- /dev/null +++ b/modules/nixos/server/nginx/default.nix @@ -0,0 +1,5 @@ +{config,lib}: with lib; mkIf config.services.nginx.enable { + services.nginx = { + recommendedProxySettings = true; + }; +}