Clone of https://github.com/NixOS/nixpkgs.git (to stress-test knotserver)
at python-updates 35 lines 1.2 kB view raw
1#!/usr/bin/env nix-shell 2#!nix-shell -i bash -p curl gnused gawk nix-prefetch common-updater-scripts jq ripgrep 3 4set -euo pipefail 5 6ROOT="$(dirname "$(readlink -f "$0")")" 7NIX_DRV="$ROOT/package.nix" 8if [ ! -f "$NIX_DRV" ]; then 9 echo "ERROR: cannot find package.nix in $ROOT" 10 exit 1 11fi 12 13fetch_arch() { 14 VER="$1"; ARCH="$2" 15 URL="https://github.com/tailwindlabs/tailwindcss/releases/download/v${VER}/tailwindcss-${ARCH}" 16 nix-hash --to-sri --type sha256 "$(nix-prefetch-url --type sha256 "$URL")" 17} 18 19replace_hash() { 20 sed -i "s#$1 = \"sha256-.\{44\}\"#$1 = \"$2\"#" "$NIX_DRV" 21} 22 23VER=$(list-git-tags --url=https://github.com/tailwindlabs/tailwindcss | rg 'v4[0-9\.]*$' | sed -e 's/^v//' | sort -V | tail -n 1) 24 25LINUX_X64_HASH=$(fetch_arch "$VER" "linux-x64") 26LINUX_AARCH64_HASH=$(fetch_arch "$VER" "linux-arm64") 27DARWIN_X64_HASH=$(fetch_arch "$VER" "macos-x64") 28DARWIN_AARCH64_HASH=$(fetch_arch "$VER" "macos-arm64") 29 30sed -i "s/version = \".*\"/version = \"$VER\"/" "$NIX_DRV" 31 32replace_hash "x86_64-linux" "$LINUX_X64_HASH" 33replace_hash "aarch64-linux" "$LINUX_AARCH64_HASH" 34replace_hash "x86_64-darwin" "$DARWIN_X64_HASH" 35replace_hash "aarch64-darwin" "$DARWIN_AARCH64_HASH"