Files
nix/modules/homelab/ddns/default.nix
T

48 lines
925 B
Nix

{
pkgs,
config,
lib,
...
}: let
cfg = config.homelab.ddns;
token = config.sops.secrets."cloudflare/api_token".path;
sec = config.sops.secrets;
in {
options.homelab.ddns = {
enable = lib.mkEnableOption "enables ddns with cloudflare";
};
config = lib.mkIf cfg.enable {
services.cloudflare-ddns = {
enable = true;
credentialsFile = token;
domains = [
# recoil.pro
"recoil.pro"
"*.recoil.pro"
"mc.recoil.pro"
"smp.recoil.pro"
"superflat.recoil.pro"
"skyblock.recoil.pro"
"cobblemon.recoil.pro"
# blakedheld.xyz
"blakedheld.xyz"
"*.blakedheld.xyz"
"git.blakedheld.xyz"
];
};
# network config
# declare authkey secrets
sops.secrets = {
"cloudflare/api_token" = {
owner = "cloudflare-ddns";
group = "cloudflare-ddns";
};
};
};
}