From dd151c9f1a5b761fe2f5f19180e059792977b47e Mon Sep 17 00:00:00 2001 From: Giulio De Pasquale Date: Tue, 22 Apr 2025 11:14:58 +0100 Subject: [PATCH] fix(update_cached_hashes.sh): update script to correctly parse and handle hash changes --- update_cached_hashes.sh | 16 ++++++++++++---- 1 file changed, 12 insertions(+), 4 deletions(-) diff --git a/update_cached_hashes.sh b/update_cached_hashes.sh index f468c5d..fe73e29 100755 --- a/update_cached_hashes.sh +++ b/update_cached_hashes.sh @@ -5,10 +5,18 @@ # (so we don't have to rebuild EVERYTHING) RELEASE=24.11 +set -e + new=$(curl -sL "https://monitoring.nixos.org/prometheus/api/v1/query?query=channel_revision" | jq -r ".data.result[] | select(.metric.channel==\"nixos-${RELEASE}\") | .metric.revision") -old=$(jq -r ".nodes.nixpkgs.locked.rev" flake.lock) +old=$(jq -r '.nodes as $nodes | .nodes.root.inputs.nixpkgs as $tgt_nixpkgs | $nodes | to_entries[] | select(.key == $tgt_nixpkgs) | .value.locked.rev' flake.lock) -echo "Old hash: ${old}" -echo "New hash: ${new}" +if [ "${old}" != "${new}" ]; then + echo "Old hash: ${old}" + echo "New hash: ${new}" -sed -i s/"${old}"/"${new}"/ flake.nix + sed -i s/"${old}"/"${new}"/ flake.nix + + exit +fi + +echo "No updates available."