From 72eed56b2f44eb7e7c3a1e27adece2967959596d Mon Sep 17 00:00:00 2001 From: FraioVeio Date: Sun, 10 May 2026 00:57:47 +0200 Subject: [PATCH 1/2] anydesk: fix broken updateScript, fix multi-arch hash update (cherry picked from commit 7adb433f357744311548fa36d158191539165628) --- pkgs/by-name/an/anydesk/package.nix | 21 ++-------------- pkgs/by-name/an/anydesk/update.sh | 39 +++++++++++++++++++++++++++++ 2 files changed, 41 insertions(+), 19 deletions(-) create mode 100755 pkgs/by-name/an/anydesk/update.sh diff --git a/pkgs/by-name/an/anydesk/package.nix b/pkgs/by-name/an/anydesk/package.nix index 5e0d5804dbf2..28c2e9e83788 100644 --- a/pkgs/by-name/an/anydesk/package.nix +++ b/pkgs/by-name/an/anydesk/package.nix @@ -4,8 +4,8 @@ fetchurl, makeWrapper, makeDesktopItem, - genericUpdater, writeShellScript, + jq, atk, cairo, gdk-pixbuf, @@ -164,24 +164,7 @@ stdenv.mkDerivation (finalAttrs: { ''; passthru = { - updateScript = genericUpdater { - versionLister = - let - arch = - if system == "x86_64-linux" then - "amd64" - else if system == "aarch64-linux" then - "arm64" - else - throw "cannot update AnyDesk on ${system}"; - in - writeShellScript "anydesk-versionLister" '' - curl -s https://anydesk.com/en/downloads/linux \ - | grep "https://[a-z0-9._/-]*-${arch}.tar.gz" -o \ - | uniq \ - | sed 's,.*/anydesk-\(.*\)-${arch}.tar.gz,\1,g' - ''; - }; + updateScript = ./update.sh; }; meta = { diff --git a/pkgs/by-name/an/anydesk/update.sh b/pkgs/by-name/an/anydesk/update.sh new file mode 100755 index 000000000000..166540cf7b8b --- /dev/null +++ b/pkgs/by-name/an/anydesk/update.sh @@ -0,0 +1,39 @@ +#!/usr/bin/env -S nix shell nixpkgs#curl nixpkgs#jq nixpkgs#nix --command bash + +set -euo pipefail + +directory="$(dirname $0 | xargs realpath)" + +new_version=$( + curl -s https://rpm.anydesk.com/rhel/x86_64/Packages/ \ + | grep -oP 'anydesk_\K[0-9]+\.[0-9]+\.[0-9]+(?=-[0-9]+_x86_64\.rpm)' \ + | sort -V \ + | tail -1 +) + +old_version=$(jq -r '.version' "$directory/pin.json") + +if [[ "$new_version" == "$old_version" ]]; then + echo "anydesk is already up to date ($old_version)" + exit 0 +fi + +echo "Updating anydesk: $old_version -> $new_version" + +hash_amd64=$(nix hash to-sri --type sha256 \ + "$(nix-prefetch-url --type sha256 \ + "https://download.anydesk.com/linux/anydesk-${new_version}-amd64.tar.gz")") + +hash_arm64=$(nix hash to-sri --type sha256 \ + "$(nix-prefetch-url --type sha256 \ + "https://download.anydesk.com/rpi/anydesk-${new_version}-arm64.tar.gz")") + +cat > "$directory/pin.json" << EOF +{ + "version": "$new_version", + "x86_64-linux": "$hash_amd64", + "aarch64-linux": "$hash_arm64" +} +EOF + +cat "$directory/pin.json" From 2e3599accfcf5c8a82254d28b19a62358d8528b7 Mon Sep 17 00:00:00 2001 From: FraioVeio Date: Wed, 24 Jun 2026 18:51:53 +0200 Subject: [PATCH 2/2] anydesk: 8.0.2 -> 8.0.3 (cherry picked from commit 86bfc8e04be8f8dac6374e123c340e1dfcfa513d) --- pkgs/by-name/an/anydesk/pin.json | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/pkgs/by-name/an/anydesk/pin.json b/pkgs/by-name/an/anydesk/pin.json index be59d275a145..5c5c41eb883e 100644 --- a/pkgs/by-name/an/anydesk/pin.json +++ b/pkgs/by-name/an/anydesk/pin.json @@ -1,5 +1,5 @@ { - "version": "8.0.2", - "x86_64-linux": "sha256-6noMPfe0x6kx/whyd66qcmk7WhEivx3xK5q58Se9Ij0=", - "aarch64-linux": "sha256-wfY+OCx9OyLCmiA29RjnYzcg/pApMIXWT5UrcdcyRYM=" + "version": "8.0.3", + "x86_64-linux": "sha256-Mjl17hh5A/pwRAi7giL1SJYlQ61O0SXX+KeH8STZ4bs=", + "aarch64-linux": "sha256-MhAj5cy81uBMoNeFPvOyhBOlJzBgNRHXyCXrpdvF8nE=" }