1 { pkgs, lib, config, hostName, ... }:
3 inherit (config) networking;
4 inherit (config.services) nginx;
8 ../../nixos/profiles/services/nginx.nix
9 nginx/sourcephile.fr.nix
11 users.groups."acme".members = [nginx.user];
12 users.groups."transmission".members = [nginx.user];
13 networking.nftables.ruleset = ''
14 add rule inet filter net2fw tcp dport 80 counter accept comment "HTTP"
15 add rule inet filter net2fw tcp dport 443 counter accept comment "HTTPS"
17 fileSystems."/var/lib/nginx" = {
18 device = "${hostName}/var/www";
21 services.upnpc.redirections = [
22 { description = "HTTP"; externalPort = 80; protocol = "TCP"; duration = 30 * 60;
23 service.wantedBy = ["nginx.service"];
24 service.partOf = ["nginx.service"];
26 { description = "HTTPS"; externalPort = 443; protocol = "TCP"; duration = 30 * 60;
27 service.wantedBy = ["nginx.service"];
28 service.partOf = ["nginx.service"];
33 package = pkgs.nginx.override {
34 modules = with pkgs.nginxModules; [
39 addresses = [ "127.0.0.1:53" ];
45 # Connection closed without response
49 useACMEHost = networking.domain;