]> Git — Sourcephile - sourcephile-nix.git/blob - servers/mermet/nginx/sourcephile.fr/www.nix
public-inbox: test sur mermet
[sourcephile-nix.git] / servers / mermet / nginx / sourcephile.fr / www.nix
1 { domain, ... }:
2 { pkgs, lib, config, ... }:
3 let inherit (config) networking;
4 inherit (config.services) nginx public-inbox;
5 srv = "www";
6 in
7 {
8 services.nginx = {
9 virtualHosts."${srv}" = {
10 serverName = "${srv}.${domain}";
11 serverAliases = [ domain ];
12 forceSSL = true;
13 useACMEHost = domain;
14 root = "/home/julm/work/sourcephile/txt";
15 extraConfig = ''
16 access_log ${nginx.logDir}/${domain}/${srv}/access.log json buffer=32k;
17 error_log ${nginx.logDir}/${domain}/${srv}/error.log warn;
18 '';
19 locations."/".extraConfig = ''
20 #autoindex on;
21 fancyindex on;
22 fancyindex_name_length 255;
23 fancyindex_exact_size off;
24 '';
25 locations."/git".return = "302 http://git.${domain}";
26 locations."/codes_sources".return = "302 http://git.${domain}";
27 locations."/lists".proxyPass = "http://unix:${builtins.head public-inbox.http.listenStreams}";
28 };
29 };
30 systemd.services.nginx.preStart = lib.mkBefore ''
31 install -D -d -m 750 -o ${nginx.user} -g ${nginx.group} ${nginx.logDir}/${domain}/${srv}/
32 '';
33 }