hickory-dns: use upstream package, unpatched

I don't need the recursive resolver patches anymore
This commit is contained in:
2024-11-10 05:56:09 +00:00
parent c30929e1a6
commit cd870e70cd

View File

@@ -61,7 +61,9 @@ let
type = types.bool; type = types.bool;
default = false; default = false;
description = '' description = ''
act as a recursive resolver act as a recursive resolver.
WARNING: the recursive resolver feature is beta, there are *many* domains that it simply fails to resolve.
''; '';
}; };
extraConfig = mkOption { extraConfig = mkOption {
@@ -202,59 +204,60 @@ in
# - see: <https://github.com/hickory-dns/hickory-dns/issues/2082> # - see: <https://github.com/hickory-dns/hickory-dns/issues/2082>
# services.hickory-dns.debug = true; # services.hickory-dns.debug = true;
services.hickory-dns.package = pkgs.hickory-dns.override { # XXX(2024/11/09): uncomment if you want to use hickory-dns as a recursive resolver again
rustPlatform.buildRustPackage = args: pkgs.rustPlatform.buildRustPackage (args // { # services.hickory-dns.package = pkgs.hickory-dns.override {
buildFeatures = [ # rustPlatform.buildRustPackage = args: pkgs.rustPlatform.buildRustPackage (args // {
# to find available features: `rg 'feature ='` # buildFeatures = [
"dnssec" #< else the recursor doesn't compile # # to find available features: `rg 'feature ='`
# "dnssec-openssl" #< else dnssec doesn't compile # "dnssec" #< else the recursor doesn't compile
"dnssec-ring" #< else dnssec doesn't compile # # "dnssec-openssl" #< else dnssec doesn't compile
"recursor" # "dnssec-ring" #< else dnssec doesn't compile
# "backtrace" # "recursor"
# "dns-over-h3" # # "backtrace"
# "dns-over-https" # # "dns-over-h3"
# "dns-over-https-rustls" # # "dns-over-https"
# "dns-over-native-tls" # # "dns-over-https-rustls"
# "dns-over-quic" # # "dns-over-native-tls"
# "dns-over-rustls" # # "dns-over-quic"
# "dns-over-tls" # # "dns-over-rustls"
# "dnssec-openssl" # # "dns-over-tls"
# "mdns" # # "dnssec-openssl"
# "native-certs" # # "mdns"
# "serde" # # "native-certs"
# "system-config" # # "serde"
# "tokio-runtime" # # "system-config"
# "webpki-roots" # # "tokio-runtime"
]; # # "webpki-roots"
# ];
# XXX(2024-11-07): upstream hickory-dns has a recursive resolver *almost* as capable as my own. # # XXX(2024-11-07): upstream hickory-dns has a recursive resolver *almost* as capable as my own.
# it fails against a few sites mine works on: # # it fails against a few sites mine works on:
# - `en.wikipedia.org.` (doesn't follow the CNAME) # # - `en.wikipedia.org.` (doesn't follow the CNAME)
# it fails against sites mine fails on: # # it fails against sites mine fails on:
# - `social.kernel.org.` # # - `social.kernel.org.`
# - `support.mozilla.org.` # # - `support.mozilla.org.`
# version = "0.25.0-alpha.2"; # # version = "0.25.0-alpha.2";
# src = pkgs.fetchFromGitHub { # # src = pkgs.fetchFromGitHub {
# owner = "hickory-dns"; # # owner = "hickory-dns";
# repo = "hickory-dns"; # # repo = "hickory-dns";
# rev = "v0.25.0-alpha.2"; # # rev = "v0.25.0-alpha.2";
# hash = "sha256-bEVApMM6/I3nF1lyRhd+7YtZuSAwiozRkMorRLhLOBY="; # # hash = "sha256-bEVApMM6/I3nF1lyRhd+7YtZuSAwiozRkMorRLhLOBY=";
# }; # # };
# cargoHash = "sha256-KFPwVFixLaL9cdXTAIVJUqmtW1V5GTmvFaK5N5SZKyU="; # # cargoHash = "sha256-KFPwVFixLaL9cdXTAIVJUqmtW1V5GTmvFaK5N5SZKyU=";
# fix enough bugs inside the recursive resolver that it's compatible with my infra. # # fix enough bugs inside the recursive resolver that it's compatible with my infra.
# TODO: upstream these patches! # # TODO: upstream these patches!
version = "0.24.1-unstable-2024-08-19"; # version = "0.24.1-unstable-2024-08-19";
src = pkgs.fetchFromGitea { # src = pkgs.fetchFromGitea {
domain = "git.uninsane.org"; # domain = "git.uninsane.org";
owner = "colin"; # owner = "colin";
repo = "hickory-dns"; # repo = "hickory-dns";
rev = "4fd7a8305e333117278e216fa9f81984f1e256b6"; # Recursor: handle NS responses with a different type and no SOA (fix: api.mangadex.org., m.wikipedia.org.) # rev = "4fd7a8305e333117278e216fa9f81984f1e256b6"; # Recursor: handle NS responses with a different type and no SOA (fix: api.mangadex.org., m.wikipedia.org.)
hash = "sha256-pNCuark/jvyRABR9Hdd60vndppaE3suvTP3UfCfsimI="; # hash = "sha256-pNCuark/jvyRABR9Hdd60vndppaE3suvTP3UfCfsimI=";
}; # };
cargoHash = "sha256-6yV/qa1CVndHDs/7AK5wVTYIV8NmNqkHL3JPZUN31eM="; # cargoHash = "sha256-6yV/qa1CVndHDs/7AK5wVTYIV8NmNqkHL3JPZUN31eM=";
}); # });
}; # };
services.hickory-dns.settings.directory = "/var/lib/hickory-dns"; services.hickory-dns.settings.directory = "/var/lib/hickory-dns";
users.groups.hickory-dns = {}; users.groups.hickory-dns = {};