]> Git — Sourcephile - sourcephile-nix.git/blob - servers/mermet/nginx/sourcephile.fr/public-inbox.nix
public-inbox: add linky@public-inbox.sourcephile.fr
[sourcephile-nix.git] / servers / mermet / nginx / sourcephile.fr / public-inbox.nix
1 { domain, ... }:
2 { pkgs, lib, config, ... }:
3 let inherit (config) networking;
4 inherit (config.services) nginx public-inbox;
5 srv = "public-inbox";
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."/".return = "302 /archives";
20 locations."= /archives".return = "302 /archives/";
21 locations."/archives".proxyPass = "http://unix:${builtins.head public-inbox.http.listenStreams}:/archives";
22 };
23 };
24 systemd.services.nginx.preStart = lib.mkBefore ''
25 install -D -d -m 750 -o ${nginx.user} -g ${nginx.group} ${nginx.logDir}/${domain}/${srv}/
26 '';
27 }