Clone of https://github.com/NixOS/nixpkgs.git (to stress-test knotserver)
at devShellTools-shell 20 lines 861 B view raw
1#!/usr/bin/env nix-shell 2#!nix-shell -i bash -p nix nix-update 3 4set -euxo pipefail 5 6nix-update "${UPDATE_NIX_ATTR_PATH}" 7nix-update "${UPDATE_NIX_ATTR_PATH}.npmPkg" --version=skip 8 9FILE="$(nix-instantiate --eval -E 'with import ./. {}; (builtins.unsafeGetAttrPos "version" '"${UPDATE_NIX_ATTR_PATH}"').file' | tr -d '"')" 10 11MVNHASH_OLD=$(nix-instantiate --eval . -A "${UPDATE_NIX_ATTR_PATH}.mvnHash" | tr -d '"') 12MVNHASH_OLD_ESCAPED=$(echo "${MVNHASH_OLD}" | sed -re 's|[+]|\\&|g') 13FAKEHASH=$(nix-instantiate --eval . -A "lib.fakeHash" | tr -d '"') 14FAKEHASH_ESCAPED=$(echo "${FAKEHASH}" | sed -re 's|[+]|\\&|g') 15 16sed -E -i "s|${MVNHASH_OLD_ESCAPED}|${FAKEHASH}|g" "${FILE}" 17 18MVNHASH_NEW="$(nix-build . -A "${UPDATE_NIX_ATTR_PATH}" 2>&1 | tail -n10 | grep 'got:' | cut -d: -f2- | xargs echo || true)" 19 20sed -E -i "s|${FAKEHASH_ESCAPED}|${MVNHASH_NEW}|g" "${FILE}"