diff --git a/nixos/doc/manual/release-notes/rl-2311.section.md b/nixos/doc/manual/release-notes/rl-2311.section.md index d837e0ff68b7cb3..0fd5f802d24925c 100644 --- a/nixos/doc/manual/release-notes/rl-2311.section.md +++ b/nixos/doc/manual/release-notes/rl-2311.section.md @@ -1017,7 +1017,7 @@ Make sure to also check the many updates in the [Nixpkgs library](#sec-release-2 - [trust-dns](https://trust-dns.org/), a Rust based DNS server built to be safe and secure from the ground up. Available as - [services.trust-dns](#opt-services.trust-dns.enable). + `services.trust-dns`. - [osquery](https://www.osquery.io/), a SQL powered operating system instrumentation, monitoring, and analytics. Available as diff --git a/nixos/doc/manual/release-notes/rl-2411.section.md b/nixos/doc/manual/release-notes/rl-2411.section.md index 4083147237ab160..a40b91d9467ef88 100644 --- a/nixos/doc/manual/release-notes/rl-2411.section.md +++ b/nixos/doc/manual/release-notes/rl-2411.section.md @@ -307,6 +307,8 @@ - The `xdg.portal.gtkUsePortal` option has been removed, as it had been deprecated for over 2 years. Using the `GTK_USE_PORTAL` environment variable in this manner is not intended nor encouraged by the GTK developers, but can still be done manually via `environment.sessionVariables`. +- The `services.trust-dns` module has been renamed to `services.hickory-dns`. + ## Other Notable Changes {#sec-release-24.11-notable-changes} diff --git a/nixos/modules/module-list.nix b/nixos/modules/module-list.nix index 28a58249e79809c..6b83c0bab4062bc 100644 --- a/nixos/modules/module-list.nix +++ b/nixos/modules/module-list.nix @@ -1047,6 +1047,7 @@ ./services/networking/harmonia.nix ./services/networking/haproxy.nix ./services/networking/headscale.nix + ./services/networking/hickory-dns.nix ./services/networking/hostapd.nix ./services/networking/htpdate.nix ./services/networking/https-dns-proxy.nix @@ -1234,7 +1235,6 @@ ./services/networking/tox-node.nix ./services/networking/toxvpn.nix ./services/networking/trickster.nix - ./services/networking/trust-dns.nix ./services/networking/tvheadend.nix ./services/networking/twingate.nix ./services/networking/ucarp.nix diff --git a/nixos/modules/services/networking/trust-dns.nix b/nixos/modules/services/networking/hickory-dns.nix similarity index 78% rename from nixos/modules/services/networking/trust-dns.nix rename to nixos/modules/services/networking/hickory-dns.nix index 039b7de26350478..6b99686958d727f 100644 --- a/nixos/modules/services/networking/trust-dns.nix +++ b/nixos/modules/services/networking/hickory-dns.nix @@ -1,9 +1,9 @@ { config, lib, pkgs, ... }: let - cfg = config.services.trust-dns; + cfg = config.services.hickory-dns; toml = pkgs.formats.toml { }; - configFile = toml.generate "trust-dns.toml" ( + configFile = toml.generate "hickory-dns.toml" ( lib.filterAttrsRecursive (_: v: v != null) cfg.settings ); @@ -26,7 +26,7 @@ let - "Forward" (a cached zone where all requests are forwarded to another resolver). For more details about these zone types, consult the documentation for BIND, - though note that trust-dns supports only a subset of BIND's zone types: + though note that hickory-dns supports only a subset of BIND's zone types: ''; }; @@ -45,10 +45,19 @@ let in { meta.maintainers = with lib.maintainers; [ colinsane ]; + + imports = with lib; [ + (mkRenamedOptionModule [ "services" "trust-dns" "enable" ] [ "services" "hickory-dns" "enable" ]) + (mkRenamedOptionModule [ "services" "trust-dns" "package" ] [ "services" "hickory-dns" "package" ]) + (mkRenamedOptionModule [ "services" "trust-dns" "settings" ] [ "services" "hickory-dns" "settings" ]) + (mkRenamedOptionModule [ "services" "trust-dns" "quiet" ] [ "services" "hickory-dns" "quiet" ]) + (mkRenamedOptionModule [ "services" "trust-dns" "debug" ] [ "services" "hickory-dns" "debug" ]) + ]; + options = { - services.trust-dns = with lib; { - enable = mkEnableOption "trust-dns"; - package = mkPackageOption pkgs "trust-dns" { + services.hickory-dns = with lib; { + enable = mkEnableOption "hickory-dns"; + package = mkPackageOption pkgs "hickory-dns" { extraDescription = '' ::: {.note} The package must provide `meta.mainProgram` which names the server binary; any other utilities (client, resolver) are not needed. @@ -75,9 +84,9 @@ in }; settings = mkOption { description = '' - Settings for trust-dns. The options enumerated here are not exhaustive. + Settings for hickory-dns. The options enumerated here are not exhaustive. Refer to upstream documentation for all available options: - - [Example settings](https://github.com/bluejekyll/trust-dns/blob/main/tests/test-data/test_configs/example.toml) + - [Example settings](https://github.com/hickory-dns/hickory-dns/blob/main/tests/test-data/test_configs/example.toml) ''; type = types.submodule { freeformType = toml.type; @@ -106,9 +115,9 @@ in }; directory = mkOption { type = types.str; - default = "/var/lib/trust-dns"; + default = "/var/lib/hickory-dns"; description = '' - The directory in which trust-dns should look for .zone files, + The directory in which hickory-dns should look for .zone files, whenever zones aren't specified by absolute path. ''; }; @@ -124,23 +133,23 @@ in }; config = lib.mkIf cfg.enable { - systemd.services.trust-dns = { - description = "trust-dns Domain Name Server"; - unitConfig.Documentation = "https://trust-dns.org/"; + systemd.services.hickory-dns = { + description = "hickory-dns Domain Name Server"; + unitConfig.Documentation = "https://hickory-dns.org/"; serviceConfig = { ExecStart = let flags = (lib.optional cfg.debug "--debug") ++ (lib.optional cfg.quiet "--quiet"); flagsStr = builtins.concatStringsSep " " flags; in '' - ${cfg.package}/bin/${cfg.package.meta.mainProgram} --config ${configFile} ${flagsStr} + ${lib.getExe cfg.package} --config ${configFile} ${flagsStr} ''; Type = "simple"; Restart = "on-failure"; RestartSec = "10s"; DynamicUser = true; - StateDirectory = "trust-dns"; + StateDirectory = "hickory-dns"; ReadWritePaths = [ cfg.settings.directory ]; AmbientCapabilities = [ "CAP_NET_BIND_SERVICE" ]; diff --git a/pkgs/servers/dns/trust-dns/default.nix b/pkgs/by-name/hi/hickory-dns/package.nix similarity index 84% rename from pkgs/servers/dns/trust-dns/default.nix rename to pkgs/by-name/hi/hickory-dns/package.nix index 09b7ebea4d65a9e..cf6226089097b51 100644 --- a/pkgs/servers/dns/trust-dns/default.nix +++ b/pkgs/by-name/hi/hickory-dns/package.nix @@ -6,7 +6,7 @@ }: rustPlatform.buildRustPackage rec { - pname = "trust-dns"; + pname = "hickory-dns"; version = "0.24.1"; src = fetchFromGitHub { @@ -15,7 +15,7 @@ rustPlatform.buildRustPackage rec { rev = "v${version}"; hash = "sha256-szq21RuRmkhAfHlzhGQYpwjiIRkavFCPETOt+6TxhP4="; }; - cargoHash = "sha256-zGn5vHwsHgpkgOr30QiyScqnfXjH55LQIVtxoUUox64="; + cargoHash = "sha256-LcMjHHEuDlhSfDXGIrSMXewraSxEgRw2g2DOoH4i5RU="; buildInputs = [ openssl ]; nativeBuildInputs = [ pkg-config ]; @@ -25,7 +25,7 @@ rustPlatform.buildRustPackage rec { meta = with lib; { description = "Rust based DNS client, server, and resolver"; - homepage = "https://trust-dns.org/"; + homepage = "https://hickory-dns.org/"; maintainers = with maintainers; [ colinsane ]; platforms = platforms.linux; license = with licenses; [ asl20 mit ]; diff --git a/pkgs/top-level/aliases.nix b/pkgs/top-level/aliases.nix index 471a3763e9381e9..80e973a382382a0 100644 --- a/pkgs/top-level/aliases.nix +++ b/pkgs/top-level/aliases.nix @@ -1467,6 +1467,7 @@ mapAliases ({ transifex-client = transifex-cli; # Added 2023-12-29 trezor_agent = trezor-agent; # Added 2024-01-07 openai-triton-llvm = triton-llvm; # added 2024-07-18 + trust-dns = hickory-dns; # Added 2024-08-07 trustedGrub = throw "trustedGrub has been removed, because it is not maintained upstream anymore"; # Added 2023-05-10 trustedGrub-for-HP = throw "trustedGrub-for-HP has been removed, because it is not maintained upstream anymore"; # Added 2023-05-10 tumpa = throw "tumpa has been removed, as it is broken"; # Added 2024-07-15 diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index c205cdd032b401d..57bede58e16f06c 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -27362,8 +27362,6 @@ with pkgs; inherit (darwin.apple_sdk.frameworks) Security; }; - trust-dns = callPackage ../servers/dns/trust-dns { }; - trustymail = callPackage ../tools/security/trustymail { }; tunctl = callPackage ../os-specific/linux/tunctl { };