# Configuration file local to this node { config, pkgs, ... }: { networking.hostName = "caribou"; # Define your hostname. networking.interfaces.eno1.useDHCP = false; networking.interfaces.eno1.ipv4.addresses = [ { address = "192.168.1.23"; prefixLength = 24; } ]; # networking.interfaces.eno1.ipv6.addresses = [ # { # address = "2a01:e0a:c:a720::23"; # prefixLength = 64; # } # ]; # OR use USB modem plugged in here #networking.interfaces.enp0s20u1.useDHCP = true; # Enable nix-serve services.nix-serve = { enable = true; secretKeyFile = "/var/cache-priv-key.pem"; }; # Configure a Nginx web server to serve NixOS cache services.nginx = { enable = true; virtualHosts = { "binarycache.home.adnab.me" = { serverAliases = [ "binarycache" ]; locations."/".extraConfig = '' proxy_pass http://localhost:${toString config.services.nix-serve.port}; proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; ''; }; }; }; networking.firewall.allowedTCPPorts = [ 80 ]; }