From 80cb27a6186199dba8a723f4c2710794de992561 Mon Sep 17 00:00:00 2001 From: Wroclaw Date: Wed, 9 Apr 2025 12:54:16 +0200 Subject: [PATCH] pkgs/den-http-get-updater: try evaluate urlLocation multiple times --- .../de/den-http-get-updater/package.nix | 19 +++++++++++++++---- 1 file changed, 15 insertions(+), 4 deletions(-) diff --git a/pkgs/by-name/de/den-http-get-updater/package.nix b/pkgs/by-name/de/den-http-get-updater/package.nix index 484fa35..106451a 100644 --- a/pkgs/by-name/de/den-http-get-updater/package.nix +++ b/pkgs/by-name/de/den-http-get-updater/package.nix @@ -113,10 +113,21 @@ writeScript "den-http-get-updater" ('' nixUnpack = lib.optionalString unpack "--unpack"; nixName = lib.optionalString (!builtins.isNull name) "--name \"${lib.escapeShellArg name}\""; in '' - nixUrlsResult=$(nix-instantiate --eval --json --strict \ - "${prefetchUrlLocationShellEscape.file}" \ - -A "${prefetchUrlLocationShellEscape.attrpath}" - ) + for i in {{ 1..30 }}; do + nixUrlsResult=$(nix-instantiate --eval --json --strict \ + "${prefetchUrlLocationShellEscape.file}" \ + -A "${prefetchUrlLocationShellEscape.attrpath}" + ) + if [[ "$?" == "0" ]]; then + break + elif [[ "$i" == 30 ]]; then + echo "error: prefetchUrlLocation failed - attempts exhausted" 1>&2 + exit 1 + fi + echo "prefetchUrlLocation failed (attempt $i)" 1>&2 + sleep 2 + done + urlsType=$(jq -rc 'type' <<< "$nixUrlsResult") if [ "$urlsType" = "array" ]; then