feat(dnsconfig.js): add OpenPGP key discovery and Reactive Resume CNAME

feat(flake.nix): remove dnscontrol version override to use latest

feat(types-dnscontrol.d.ts): update to DNSControl 4.45.0 with improved type definitions
This commit is contained in:
Ari committed 2026-08-12 21:36:50 -04:00
1 parent b7d8cdcc15
commit 8234d133fd
4 files changed
+17 -22

No files matched your search

+3
View File
@@ -37,6 +37,8 @@ DEFAULTS(
issuemail: "none", issuemail: "none",
issuemail_critical: true, issuemail_critical: true,
}), }),
CNAME("openpgpkey", "wkd.keys.openpgp.org."),
TXT("@", "$argon2id$v=19$m=64,t=512,p=2$H4Bumsm+B/5AoPZg6ALhXA$CqmxBvGH0Qcl0sd3DP0ERQ"),
); );
/* ****************************************************************************************************************** *\ /* ****************************************************************************************************************** *\
@@ -131,6 +133,7 @@ cnames("arirex.me", rexcloud, [
"OpenWebUI@ai", "OpenWebUI@ai",
"Owncast@stream", "Owncast@stream",
"Pocket ID@id", "Pocket ID@id",
"Reactive Resume@resume",
"SearXNG@search", "SearXNG@search",
]); ]);
Generated
+3 -3
View File
@@ -20,11 +20,11 @@
}, },
"nixpkgs": { "nixpkgs": {
"locked": { "locked": {
"lastModified": 1778443072, "lastModified": 1786384358,
"narHash": "sha256-zi7/fsqM/kFdNuED//4WOCUtezGtKKqRNORjMvfwjnA=", "narHash": "sha256-RzPPiWeUtuvymnpuEWsdtzli5w4kjZs49FqEs3/1u+I=",
"owner": "nixos", "owner": "nixos",
"repo": "nixpkgs", "repo": "nixpkgs",
"rev": "da5ad661ba4e5ef59ba743f0d112cbc30e474f32", "rev": "2fcb964de67fcf60b43471c55d5d99e61a9ccb5a",
"type": "github" "type": "github"
}, },
"original": { "original": {
+1 -10
View File
@@ -11,16 +11,7 @@
in { in {
devShells.default = pkgs.mkShell { devShells.default = pkgs.mkShell {
buildInputs = with pkgs; [ buildInputs = with pkgs; [
(dnscontrol.overrideAttrs (oldAttrs: { dnscontrol
version = "4.38.0";
src = fetchFromGitHub {
owner = "DNSControl";
repo = "dnscontrol";
rev = "v${oldAttrs.version}";
sha256 = "sha256-lM+9xuNB88csciIC5eu2oRl0IBqZE7CCPCxf8BEZSz0=";
};
vendorHash = "sha256-pzdOW+L/w74ANaCKXWQviBMDlSTOfebAVE7Cdd+lZLo=";
}))
(git-crypt.overrideAttrs (oldAttrs: { src = fetchFromGitHub { (git-crypt.overrideAttrs (oldAttrs: { src = fetchFromGitHub {
owner = "narrowin"; owner = "narrowin";
repo = "git-crypt"; repo = "git-crypt";
+10 -9
View File
@@ -1,7 +1,7 @@
// This file was automatically generated by DNSControl. Do not edit it directly. // This file was automatically generated by DNSControl. Do not edit it directly.
// To update it, run `dnscontrol write-types`. // To update it, run `dnscontrol write-types`.
// 4.38.0 // 4.45.0
// WARNING: These type definitions are experimental and subject to change in future releases. // WARNING: These type definitions are experimental and subject to change in future releases.
interface Domain { interface Domain {
@@ -31,7 +31,8 @@ type DomainModifier =
type RecordModifier = type RecordModifier =
| ((record: DNSRecord) => void) | ((record: DNSRecord) => void)
| Partial<DNSRecord['meta']>; | Partial<DNSRecord['meta']>
| RecordModifier[];
type Duration = type Duration =
| `${number}${'s' | 'm' | 'h' | 'd' | 'w' | 'n' | 'y' | ''}` | `${number}${'s' | 'm' | 'h' | 'd' | 'w' | 'n' | 'y' | ''}`
@@ -545,21 +546,21 @@ declare function CAA(name: string, tag: "issue" | "issuewild" | "iodef" | "conta
* ### Parameters * ### Parameters
* *
* * `label:` The label of the CAA record. (Optional. Default: `"@"`) * * `label:` The label of the CAA record. (Optional. Default: `"@"`)
* * `iodef:` Report all violation to configured mail address. * * `iodef:` Report all violation to configured mail address. (Optional. Default: `""`)
* * `iodef_critical:` This can be `true` or `false`. If enabled and CA does not support this record, then certificate issue will be refused. (Optional. Default: `false`) * * `iodef_critical:` This can be `true` or `false`. If enabled and CA does not support this record, then certificate issue will be refused. (Optional. Default: `false`)
* * `issue:` An array of CAs which are allowed to issue certificates. (Use `"none"` to refuse all CAs) * * `issue:` An array of CAs which are allowed to issue certificates. (Optional. Default: `[]`. Use `"none"` to refuse all CAs)
* * `issue_critical:` This can be `true` or `false`. If enabled and CA does not support this record, then certificate issue will be refused. (Optional. Default: `false`) * * `issue_critical:` This can be `true` or `false`. If enabled and CA does not support this record, then certificate issue will be refused. (Optional. Default: `false`)
* * `issuewild:` An array of CAs which are allowed to issue wildcard certificates. (Can be simply `"none"` to refuse issuing wildcard certificates for all CAs) * * `issuewild:` An array of CAs which are allowed to issue wildcard certificates. (Optional. Default: `[]`. Can be simply `"none"` to refuse issuing wildcard certificates for all CAs)
* * `issuewild_critical:` This can be `true` or `false`. If enabled and CA does not support this record, then certificate issue will be refused. (Optional. Default: `false`) * * `issuewild_critical:` This can be `true` or `false`. If enabled and CA does not support this record, then certificate issue will be refused. (Optional. Default: `false`)
* * `issuevmc:` An array of CAs which are allowed to issue VMC certificates. (Use `"none"` to refuse all CAs) * * `issuevmc:` An array of CAs which are allowed to issue VMC certificates. (Optional. Default: `[]`. Use `"none"` to refuse all CAs)
* * `issuevmc_critical:` This can be `true` or `false`. If enabled and CA does not support this record, then certificate issue will be refused. (Optional. Default: `false`) * * `issuevmc_critical:` This can be `true` or `false`. If enabled and CA does not support this record, then certificate issue will be refused. (Optional. Default: `false`)
* * `issuemail:` An array of CAs which are allowed to issue email certificates. (Use `"none"` to refuse all CAs) * * `issuemail:` An array of CAs which are allowed to issue email certificates. (Optional. Default: `[]`. Use `"none"` to refuse all CAs)
* * `issuemail_critical:` This can be `true` or `false`. If enabled and CA does not support this record, then certificate issue will be refused. (Optional. Default: `false`) * * `issuemail_critical:` This can be `true` or `false`. If enabled and CA does not support this record, then certificate issue will be refused. (Optional. Default: `false`)
* * `ttl:` Input for `TTL` method (optional) * * `ttl:` Input for `TTL` method (optional)
* *
* @see https://docs.dnscontrol.org/language-reference/domain-modifiers/caa_builder * @see https://docs.dnscontrol.org/language-reference/domain-modifiers/caa_builder
*/ */
declare function CAA_BUILDER(opts: { label?: string; iodef: string; iodef_critical?: boolean; issue: string[]|string; issue_critical?: boolean; issuewild: string[]|string; issuewild_critical?: boolean; issuevmc: string[]|string; issuevmc_critical?: boolean; issuemail: string[]|string; issuemail_critical?: boolean; ttl?: Duration }): DomainModifier; declare function CAA_BUILDER(opts: { label?: string; iodef?: string; iodef_critical?: boolean; issue?: string[]|'none'; issue_critical?: boolean; issuewild?: string[]|'none'; issuewild_critical?: boolean; issuevmc?: string[]|'none'; issuevmc_critical?: boolean; issuemail?: string[]|'none'; issuemail_critical?: boolean; ttl?: Duration }): DomainModifier;
/** /**
* **WARNING:** Cloudflare is removing this feature and replacing it with a new * **WARNING:** Cloudflare is removing this feature and replacing it with a new
@@ -3130,7 +3131,7 @@ declare const PURGE: DomainModifier;
* *
* @see https://docs.dnscontrol.org/language-reference/domain-modifiers/service-provider-specific/amazon-route-53/r53_alias * @see https://docs.dnscontrol.org/language-reference/domain-modifiers/service-provider-specific/amazon-route-53/r53_alias
*/ */
declare function R53_ALIAS(name: string, target: string, zone_idModifier: DomainModifier & RecordModifier, evaluatetargethealthModifier: RecordModifier): DomainModifier; declare function R53_ALIAS(name: string, type: "SOA" | "A" | "TXT" | "CNAME" | "MX" | "NAPTR" | "PTR" | "SRV" | "SPF" | "AAAA" | "CAA" | "DS" | "TLSA" | "SSHFP" | "SVCB" | "HTTPS", target: string, ...modifiers: RecordModifier[]): DomainModifier;
/** /**
* `R53_EVALUATE_TARGET_HEALTH` lets you enable target health evaluation for a [`R53_ALIAS()`](../domain-modifiers/R53_ALIAS.md) record. Omitting `R53_EVALUATE_TARGET_HEALTH()` from `R53_ALIAS()` set the behavior to false. * `R53_EVALUATE_TARGET_HEALTH` lets you enable target health evaluation for a [`R53_ALIAS()`](../domain-modifiers/R53_ALIAS.md) record. Omitting `R53_EVALUATE_TARGET_HEALTH()` from `R53_ALIAS()` set the behavior to false.