From 399818be8520776965d1b4973aa78999f948d861 Mon Sep 17 00:00:00 2001 From: Leon Hubrich Date: Sat, 27 Jun 2026 14:14:21 +0000 Subject: [PATCH] technitium-dns-server{,-library}: add update script Assisted-by: Claude Code (claude-sonnet-4-6) --- .../technitium-dns-server-library/package.nix | 3 --- .../te/technitium-dns-server/package.nix | 3 +-- .../te/technitium-dns-server/update.sh | 19 +++++++++++++++++++ 3 files changed, 20 insertions(+), 5 deletions(-) create mode 100755 pkgs/by-name/te/technitium-dns-server/update.sh diff --git a/pkgs/by-name/te/technitium-dns-server-library/package.nix b/pkgs/by-name/te/technitium-dns-server-library/package.nix index c5db4bfb27f8..8187a23d8f72 100644 --- a/pkgs/by-name/te/technitium-dns-server-library/package.nix +++ b/pkgs/by-name/te/technitium-dns-server-library/package.nix @@ -3,7 +3,6 @@ buildDotnetModule, fetchFromGitHub, dotnetCorePackages, - nix-update-script, }: buildDotnetModule rec { pname = "technitium-dns-server-library"; @@ -27,8 +26,6 @@ buildDotnetModule rec { "TechnitiumLibrary.Security.OTP/TechnitiumLibrary.Security.OTP.csproj" ]; - passthru.updateScript = nix-update-script { }; - meta = { changelog = "https://github.com/TechnitiumSoftware/DnsServer/blob/master/CHANGELOG.md"; description = "Library for Authorative and Recursive DNS server for Privacy and Security"; diff --git a/pkgs/by-name/te/technitium-dns-server/package.nix b/pkgs/by-name/te/technitium-dns-server/package.nix index 6ddd88f61f89..e4bb8b7cbaa9 100644 --- a/pkgs/by-name/te/technitium-dns-server/package.nix +++ b/pkgs/by-name/te/technitium-dns-server/package.nix @@ -6,7 +6,6 @@ technitium-dns-server-library, libmsquic, nixosTests, - nix-update-script, }: buildDotnetModule rec { pname = "technitium-dns-server"; @@ -45,7 +44,7 @@ buildDotnetModule rec { inherit (nixosTests) technitium-dns-server; }; - passthru.updateScript = nix-update-script { }; + passthru.updateScript = ./update.sh; meta = { changelog = "https://github.com/TechnitiumSoftware/DnsServer/blob/master/CHANGELOG.md"; diff --git a/pkgs/by-name/te/technitium-dns-server/update.sh b/pkgs/by-name/te/technitium-dns-server/update.sh new file mode 100755 index 000000000000..c4a3033366e5 --- /dev/null +++ b/pkgs/by-name/te/technitium-dns-server/update.sh @@ -0,0 +1,19 @@ +#!/usr/bin/env nix-shell +#!nix-shell -I nixpkgs=./. -i bash -p curl jq common-updater-scripts gnused nix coreutils + +set -euo pipefail + +latestVersion="$(curl -s ${GITHUB_TOKEN:+-u ":$GITHUB_TOKEN"} "https://api.github.com/repos/TechnitiumSoftware/DnsServer/releases?per_page=1" | jq -r ".[0].tag_name" | sed 's/^v//')" +currentVersion="${UPDATE_NIX_OLD_VERSION:-$(nix-instantiate --eval -E 'with import ./. {}; technitium-dns-server.version or (lib.getVersion technitium-dns-server)' | tr -d '"')}" + +if [[ "$currentVersion" == "$latestVersion" ]]; then + echo "technitium-dns-server is up-to-date: $currentVersion" + exit 0 +fi + +update-source-version technitium-dns-server-library "$latestVersion" +update-source-version technitium-dns-server "$latestVersion" + +# Regenerate nuget dependencies for both packages +$(nix-build . -A technitium-dns-server-library.fetch-deps --no-out-link) +$(nix-build . -A technitium-dns-server.fetch-deps --no-out-link)