This repository has no description
851 B
31 lines
1{ config, lib, pkgs, ...}:
2{
3 # nixpkgs.config.packageOverrides = p: {
4 # nix-serve = p.haskellPackages.nix-serve-ng;
5 # };
6 # generate private key with:
7 # nix-store --generate-binary-cache-key my-secret-key my-public-key
8 services.nix-serve = {
9 enable = true;
10 secretKeyFile = "${config.krebs.secret.directory}/nix-serve.key";
11 port = 5005;
12 };
13
14 services.nginx = {
15 enable = true;
16 virtualHosts.nix-serve = {
17 serverAliases = [ "cache.${config.networking.hostName}.r" ];
18 locations."/".extraConfig = ''
19 proxy_pass http://localhost:${toString config.services.nix-serve.port};
20 '';
21 locations."= /nix-cache-info".extraConfig = ''
22 alias ${pkgs.writeText "cache-info" ''
23 StoreDir: /nix/store
24 WantMassQuery: 1
25 Priority: 42
26 ''};
27 '';
28 };
29 };
30}
31