Merge pull request #316466 from uninsane/rebrand-trust-dns

hickory-dns: rename from trust-dns
This commit is contained in:
Adam C. Stephens 2024-08-11 07:35:03 -04:00 committed by GitHub
commit 0536436018
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
7 changed files with 32 additions and 22 deletions

View file

@ -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 - [trust-dns](https://trust-dns.org/), a Rust based DNS server built to be safe
and secure from the ground up. Available as 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 - [osquery](https://www.osquery.io/), a SQL powered operating system
instrumentation, monitoring, and analytics. Available as instrumentation, monitoring, and analytics. Available as

View file

@ -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 `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} ## Other Notable Changes {#sec-release-24.11-notable-changes}
<!-- To avoid merge conflicts, consider adding your item at an arbitrary place in the list instead. --> <!-- To avoid merge conflicts, consider adding your item at an arbitrary place in the list instead. -->

View file

@ -1047,6 +1047,7 @@
./services/networking/harmonia.nix ./services/networking/harmonia.nix
./services/networking/haproxy.nix ./services/networking/haproxy.nix
./services/networking/headscale.nix ./services/networking/headscale.nix
./services/networking/hickory-dns.nix
./services/networking/hostapd.nix ./services/networking/hostapd.nix
./services/networking/htpdate.nix ./services/networking/htpdate.nix
./services/networking/https-dns-proxy.nix ./services/networking/https-dns-proxy.nix
@ -1234,7 +1235,6 @@
./services/networking/tox-node.nix ./services/networking/tox-node.nix
./services/networking/toxvpn.nix ./services/networking/toxvpn.nix
./services/networking/trickster.nix ./services/networking/trickster.nix
./services/networking/trust-dns.nix
./services/networking/tvheadend.nix ./services/networking/tvheadend.nix
./services/networking/twingate.nix ./services/networking/twingate.nix
./services/networking/ucarp.nix ./services/networking/ucarp.nix

View file

@ -1,9 +1,9 @@
{ config, lib, pkgs, ... }: { config, lib, pkgs, ... }:
let let
cfg = config.services.trust-dns; cfg = config.services.hickory-dns;
toml = pkgs.formats.toml { }; toml = pkgs.formats.toml { };
configFile = toml.generate "trust-dns.toml" ( configFile = toml.generate "hickory-dns.toml" (
lib.filterAttrsRecursive (_: v: v != null) cfg.settings lib.filterAttrsRecursive (_: v: v != null) cfg.settings
); );
@ -26,7 +26,7 @@ let
- "Forward" (a cached zone where all requests are forwarded to another resolver). - "Forward" (a cached zone where all requests are forwarded to another resolver).
For more details about these zone types, consult the documentation for BIND, 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:
<https://bind9.readthedocs.io/en/v9_18_4/reference.html#type> <https://bind9.readthedocs.io/en/v9_18_4/reference.html#type>
''; '';
}; };
@ -45,10 +45,19 @@ let
in in
{ {
meta.maintainers = with lib.maintainers; [ colinsane ]; 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 = { options = {
services.trust-dns = with lib; { services.hickory-dns = with lib; {
enable = mkEnableOption "trust-dns"; enable = mkEnableOption "hickory-dns";
package = mkPackageOption pkgs "trust-dns" { package = mkPackageOption pkgs "hickory-dns" {
extraDescription = '' extraDescription = ''
::: {.note} ::: {.note}
The package must provide `meta.mainProgram` which names the server binary; any other utilities (client, resolver) are not needed. 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 { settings = mkOption {
description = '' 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: 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 { type = types.submodule {
freeformType = toml.type; freeformType = toml.type;
@ -106,9 +115,9 @@ in
}; };
directory = mkOption { directory = mkOption {
type = types.str; type = types.str;
default = "/var/lib/trust-dns"; default = "/var/lib/hickory-dns";
description = '' 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. whenever zones aren't specified by absolute path.
''; '';
}; };
@ -124,23 +133,23 @@ in
}; };
config = lib.mkIf cfg.enable { config = lib.mkIf cfg.enable {
systemd.services.trust-dns = { systemd.services.hickory-dns = {
description = "trust-dns Domain Name Server"; description = "hickory-dns Domain Name Server";
unitConfig.Documentation = "https://trust-dns.org/"; unitConfig.Documentation = "https://hickory-dns.org/";
serviceConfig = { serviceConfig = {
ExecStart = ExecStart =
let let
flags = (lib.optional cfg.debug "--debug") ++ (lib.optional cfg.quiet "--quiet"); flags = (lib.optional cfg.debug "--debug") ++ (lib.optional cfg.quiet "--quiet");
flagsStr = builtins.concatStringsSep " " flags; flagsStr = builtins.concatStringsSep " " flags;
in '' in ''
${cfg.package}/bin/${cfg.package.meta.mainProgram} --config ${configFile} ${flagsStr} ${lib.getExe cfg.package} --config ${configFile} ${flagsStr}
''; '';
Type = "simple"; Type = "simple";
Restart = "on-failure"; Restart = "on-failure";
RestartSec = "10s"; RestartSec = "10s";
DynamicUser = true; DynamicUser = true;
StateDirectory = "trust-dns"; StateDirectory = "hickory-dns";
ReadWritePaths = [ cfg.settings.directory ]; ReadWritePaths = [ cfg.settings.directory ];
AmbientCapabilities = [ "CAP_NET_BIND_SERVICE" ]; AmbientCapabilities = [ "CAP_NET_BIND_SERVICE" ];

View file

@ -6,7 +6,7 @@
}: }:
rustPlatform.buildRustPackage rec { rustPlatform.buildRustPackage rec {
pname = "trust-dns"; pname = "hickory-dns";
version = "0.24.1"; version = "0.24.1";
src = fetchFromGitHub { src = fetchFromGitHub {
@ -15,7 +15,7 @@ rustPlatform.buildRustPackage rec {
rev = "v${version}"; rev = "v${version}";
hash = "sha256-szq21RuRmkhAfHlzhGQYpwjiIRkavFCPETOt+6TxhP4="; hash = "sha256-szq21RuRmkhAfHlzhGQYpwjiIRkavFCPETOt+6TxhP4=";
}; };
cargoHash = "sha256-zGn5vHwsHgpkgOr30QiyScqnfXjH55LQIVtxoUUox64="; cargoHash = "sha256-LcMjHHEuDlhSfDXGIrSMXewraSxEgRw2g2DOoH4i5RU=";
buildInputs = [ openssl ]; buildInputs = [ openssl ];
nativeBuildInputs = [ pkg-config ]; nativeBuildInputs = [ pkg-config ];
@ -25,7 +25,7 @@ rustPlatform.buildRustPackage rec {
meta = with lib; { meta = with lib; {
description = "Rust based DNS client, server, and resolver"; description = "Rust based DNS client, server, and resolver";
homepage = "https://trust-dns.org/"; homepage = "https://hickory-dns.org/";
maintainers = with maintainers; [ colinsane ]; maintainers = with maintainers; [ colinsane ];
platforms = platforms.linux; platforms = platforms.linux;
license = with licenses; [ asl20 mit ]; license = with licenses; [ asl20 mit ];

View file

@ -1467,6 +1467,7 @@ mapAliases ({
transifex-client = transifex-cli; # Added 2023-12-29 transifex-client = transifex-cli; # Added 2023-12-29
trezor_agent = trezor-agent; # Added 2024-01-07 trezor_agent = trezor-agent; # Added 2024-01-07
openai-triton-llvm = triton-llvm; # added 2024-07-18 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 = 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 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 tumpa = throw "tumpa has been removed, as it is broken"; # Added 2024-07-15

View file

@ -27362,8 +27362,6 @@ with pkgs;
inherit (darwin.apple_sdk.frameworks) Security; inherit (darwin.apple_sdk.frameworks) Security;
}; };
trust-dns = callPackage ../servers/dns/trust-dns { };
trustymail = callPackage ../tools/security/trustymail { }; trustymail = callPackage ../tools/security/trustymail { };
tunctl = callPackage ../os-specific/linux/tunctl { }; tunctl = callPackage ../os-specific/linux/tunctl { };