2024-09-14 19:36:59 +05:30
|
|
|
{ config, inputs, pkgs, ... }:
|
|
|
|
let
|
|
|
|
inherit (import ./caddy-helpers.nix) logFormat;
|
|
|
|
in
|
|
|
|
{
|
2024-09-14 16:57:22 +05:30
|
|
|
sops = {
|
|
|
|
secrets = {
|
2024-09-14 19:36:33 +05:30
|
|
|
"caddy/env_file" = {
|
|
|
|
mode = "400";
|
|
|
|
owner = config.users.users.caddy.name;
|
|
|
|
inherit (config.users.users.caddy) group;
|
2024-09-14 16:57:22 +05:30
|
|
|
};
|
|
|
|
};
|
|
|
|
};
|
2024-07-03 17:03:34 +05:30
|
|
|
services.caddy = {
|
|
|
|
enable = true;
|
2024-09-14 16:07:45 +05:30
|
|
|
package = inputs.caddy.packages.${pkgs.system}.caddy;
|
2024-07-03 17:03:34 +05:30
|
|
|
email = "admin@acomputer.lol";
|
2024-09-14 16:57:22 +05:30
|
|
|
globalConfig = ''
|
|
|
|
acme_dns digitalocean {env.DO_API_TOKEN}
|
|
|
|
'';
|
2024-09-14 19:36:59 +05:30
|
|
|
logFormat = logFormat "caddy_main";
|
2024-07-03 17:03:34 +05:30
|
|
|
};
|
2024-09-14 19:36:33 +05:30
|
|
|
systemd.services.caddy.serviceConfig.EnvironmentFile = config.sops.secrets."caddy/env_file".path;
|
2024-08-31 17:44:26 +05:30
|
|
|
networking.firewall.allowedTCPPorts = [ 80 443 ];
|
2024-07-03 17:03:34 +05:30
|
|
|
}
|
|
|
|
|