Something went wrong. Try again.
Terminal markdown pager with syntax highlighting
Something went wrong. Try again.
1.4 kB · 42 lines
Shell
at main
12345678910111213141516171819202122232425262728293031323334353637383940414243#!/usr/bin/env bashset -euo pipefail
# Update flake.nix with correct binary hashes after a release# Usage: ./scripts/update-hashes.sh v0.0.1
VERSION="${1:-}"
if [[ -z "$VERSION" ]]; then VERSION="v$(jq -r '.version' package.json)"fi
# Strip 'v' prefix if present for the version numberVERSION_NUM="${VERSION#v}"
echo "Updating hashes for version $VERSION..."
DARWIN_URL="https://github.com/aliou/md-tui/releases/download/${VERSION}/mdp-darwin-arm64"LINUX_URL="https://github.com/aliou/md-tui/releases/download/${VERSION}/mdp-linux-arm64"
echo "Fetching darwin hash..."DARWIN_HASH=$(nix-prefetch-url --type sha256 "$DARWIN_URL" 2>/dev/null)DARWIN_SRI=$(nix hash to-sri --type sha256 "$DARWIN_HASH")echo " Darwin: $DARWIN_SRI"
echo "Fetching linux hash..."LINUX_HASH=$(nix-prefetch-url --type sha256 "$LINUX_URL" 2>/dev/null)LINUX_SRI=$(nix hash to-sri --type sha256 "$LINUX_HASH")echo " Linux: $LINUX_SRI"
echo "Updating flake.nix..."
# Update versionsed -i '' "s/version = \"[^\"]*\";/version = \"${VERSION_NUM}\";/" flake.nix
# Update darwin hashsed -i '' "/\"aarch64-darwin\"/,/hash =/{s|hash = \"sha256-[^\"]*\"|hash = \"${DARWIN_SRI}\"|}" flake.nix
# Update linux hash sed -i '' "/\"aarch64-linux\"/,/hash =/{s|hash = \"sha256-[^\"]*\"|hash = \"${LINUX_SRI}\"|}" flake.nix
echo "Done! Verify changes with: git diff flake.nix"