#!/usr/bin/env bash # this guy updates the hash of the last # successful build of nixpkgs on hydra # (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 as $nodes | .nodes.root.inputs.nixpkgs as $tgt_nixpkgs | $nodes | to_entries[] | select(.key == $tgt_nixpkgs) | .value.locked.rev' flake.lock) if [ "${old}" != "${new}" ]; then echo "Old hash: ${old}" echo "New hash: ${new}" sed -i s/"${old}"/"${new}"/ flake.nix exit fi echo "No updates available."