Files
nixos-configs/hosts/manatee/modules/certs/default.nix
T
Alexander Heldt 3a115df8a7 manatee: Add schema
The household weekly plan at schema.ppp.pm: its module, certificate,
DNS record, backup and secrets. The link to puppy-tracker is prepared
but commented out until puppy-tracker with the integration feed is
deployed.
2026-09-30 07:33:57 +00:00

43 lines
930 B
Nix

{ config, lib, ... }:
let
# Every host is issued the same way: a DNS-01 challenge through Hetzner.
hetznerCert = {
dnsProvider = "hetzner";
environmentFile = config.age.secrets.hetzner-dns.path;
group = "nginx";
# Flag names are lego v5's (v4 spelled them --dns.propagation-wait and
# --dns-timeout).
extraLegoFlags = [
"--dns.resolvers=1.1.1.1:53,8.8.8.8:53"
"--dns.propagation.wait=60s" # Wait for 60 seconds for DNS propagation
"--dns.timeout=60"
"--http-timeout=60"
];
};
in
{
security.acme = {
acceptTerms = true;
defaults = {
email = "acme@ppp.pm";
};
certs = lib.genAttrs [
"ha.ppp.pm"
"komga.ppp.pm"
"romm.ppp.pm"
"puppy.ppp.pm"
"todo.ppp.pm"
"schema.ppp.pm"
] (_: hetznerCert);
};
age = {
secrets = {
"hetzner-dns".file = ../../../../secrets/manatee/hetzner-dns.age;
};
};
}