system/roles/file-server.nix (view raw)
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 | {
config,
lib,
...
}:
let
inherit (import ../../lib/caddy.nix { inherit lib; }) security-headers;
domain = config.networking.domain;
in
{
services.caddy = {
virtualHosts = {
"files.${domain}" = {
extraConfig = ''
encode zstd gzip
${security-headers { }}
root * /srv/http/files
file_server browse
'';
};
};
};
}
|