diff -Nru shortwave-5.1.0/debian/changelog shortwave-5.1.0/debian/changelog --- shortwave-5.1.0/debian/changelog 2026-08-01 12:00:42.000000000 -0500 +++ shortwave-5.1.0/debian/changelog 2026-08-07 13:53:27.000000000 -0500 @@ -1,3 +1,10 @@ +shortwave (5.1.0-2.1) UNRELEASED; urgency=medium + + * Non-maintainer upload. + * Rebuild against Hickory DNS 0.26. + + -- Simon Quigley Fri, 07 Aug 2026 13:53:27 -0500 + shortwave (5.1.0-2) unstable; urgency=medium * Build with strum 0.28 diff -Nru shortwave-5.1.0/debian/control shortwave-5.1.0/debian/control --- shortwave-5.1.0/debian/control 2026-08-01 12:00:42.000000000 -0500 +++ shortwave-5.1.0/debian/control 2026-08-07 13:53:27.000000000 -0500 @@ -39,8 +39,8 @@ librust-gstreamer-audio-0.25+default-dev, librust-gtk4-0.11+default-dev, librust-gtk4-0.11+gnome-46-dev, - librust-hickory-resolver-0.25+default-dev, - librust-hickory-resolver-0.25+system-config-dev, + librust-hickory-resolver-0.26+default-dev, + librust-hickory-resolver-0.26+system-config-dev, librust-indexmap-2+default-dev (>= 2.12), librust-language-tags-0.3+default-dev, librust-libadwaita-0.9+default-dev, diff -Nru shortwave-5.1.0/debian/patches/hickory-0.26.patch shortwave-5.1.0/debian/patches/hickory-0.26.patch --- shortwave-5.1.0/debian/patches/hickory-0.26.patch 1969-12-31 18:00:00.000000000 -0600 +++ shortwave-5.1.0/debian/patches/hickory-0.26.patch 2026-08-07 13:53:27.000000000 -0500 @@ -0,0 +1,75 @@ +Description: Build against hickory-resolver 0.26 +Author: Simon Quigley +Origin: vendor +Forwarded: no +Last-Update: 2026-08-07 +--- +--- a/Cargo.toml ++++ b/Cargo.toml +@@ -15,7 +15,7 @@ ashpd = { version = "0.13", features = [ + async-channel = "2.5" + async-compat = "0.2" + async-io = "2.5" +-hickory-resolver = { version = "0.25", features = ["system-config"] } ++hickory-resolver = { version = "0.26", features = ["system-config"] } + cacache = "13.1" + cast-sender = "0.3" + cruet = "0.14" +--- a/src/api/client.rs ++++ b/src/api/client.rs +@@ -20,7 +20,7 @@ use std::sync::Arc; + use gtk::gio; + use hickory_resolver::Resolver; + use hickory_resolver::config::ResolverConfig; +-use hickory_resolver::name_server::TokioConnectionProvider; ++use hickory_resolver::net::runtime::TokioRuntimeProvider; + use indexmap::IndexMap; + use rand::prelude::SliceRandom; + use rand::rng; +@@ -99,17 +99,18 @@ async fn send_request Option { + let lookup_domain = settings_manager::string(Key::ApiLookupDomain); +- let resolver = if let Ok(resolver) = Resolver::builder_tokio() { +- resolver.build() ++ let resolver = if let Ok(builder) = Resolver::builder_tokio() { ++ builder.build() + } else { + warn!("Unable to use dns resolver from system conf"); + + Resolver::builder_with_config( + ResolverConfig::default(), +- TokioConnectionProvider::default(), ++ TokioRuntimeProvider::default(), + ) + .build() +- }; ++ } ++ .ok()?; + + // Do forward lookup to receive a list with the api servers + let response = resolver.lookup_ip(lookup_domain).await.ok()?; +@@ -120,19 +121,15 @@ pub async fn lookup_rb_server() -> Optio + + for ip in ips { + // Do a reverse lookup to get the hostname +- let result = resolver +- .reverse_lookup(ip) +- .await +- .ok() +- .and_then(|r| r.into_iter().next()); ++ let result = resolver.reverse_lookup(ip).await.ok(); + +- if result.is_none() { ++ let Some(result) = result.and_then(|r| r.answers().first().cloned()) else { + warn!("Reverse lookup for {ip} failed"); + continue; +- } ++ }; + + // We need to strip the trailing "." from the domain name, otherwise TLS hostname verification fails +- let domain = result.unwrap().to_string(); ++ let domain = result.to_string(); + let hostname = domain.trim_end_matches("."); + + // Check if the server is online / returns data diff -Nru shortwave-5.1.0/debian/patches/series shortwave-5.1.0/debian/patches/series --- shortwave-5.1.0/debian/patches/series 2026-08-01 12:00:42.000000000 -0500 +++ shortwave-5.1.0/debian/patches/series 2026-08-07 13:53:27.000000000 -0500 @@ -1,3 +1,4 @@ patch-meson-build.diff relax-deps.diff build-with-gtk-rs-0.11.patch +hickory-0.26.patch