diff options
| -rw-r--r-- | modules/nixos/server/acme.nix | 26 | ||||
| -rw-r--r-- | modules/nixos/server/default.nix | 1 |
2 files changed, 27 insertions, 0 deletions
diff --git a/modules/nixos/server/acme.nix b/modules/nixos/server/acme.nix new file mode 100644 index 0000000..a28e713 --- /dev/null +++ b/modules/nixos/server/acme.nix @@ -0,0 +1,26 @@ +{ + config, + lib, + self, + ... +}: let + cfg = config.getchoo.server.acme; + inherit (lib) mkEnableOption mkIf; +in { + options.getchoo.server.acme = { + enable = mkEnableOption "acme"; + }; + + config = mkIf cfg.enable { + age.secrets.cloudflareApiKey = "${self}/secrets/shared/cloudflareApiKey.age"; + + security.acme = { + acceptTerms = true; + defaults = { + email = "[email protected]"; + dnsProvider = "cloudflare"; + credentialsFile = config.age.secrets.cloudflareApiKey.path; + }; + }; + }; +} diff --git a/modules/nixos/server/default.nix b/modules/nixos/server/default.nix index 2bcb445..ed62e81 100644 --- a/modules/nixos/server/default.nix +++ b/modules/nixos/server/default.nix @@ -10,6 +10,7 @@ in { options.getchoo.server.enable = mkEnableOption "enable server configuration"; imports = [ + ./acme.nix ./secrets.nix ./services ]; |
