Clone of https://github.com/NixOS/nixpkgs.git (to stress-test knotserver)
at devShellTools-shell 36 lines 1.1 kB view raw
1#!/usr/bin/env nix-shell 2#! nix-shell -i bash -p nix-prefetch jq 3 4latest_release=$(curl --silent https://api.github.com/repos/ful1e5/XCursor-pro/releases/latest) 5version=$(jq -r '.tag_name' <<<"$latest_release") 6version="${version#*v}" 7 8dirname="$(dirname "$0")" 9if [ "$UPDATE_NIX_OLD_VERSION" = "$version" ]; then 10 printf 'No new version available, current: %s\n' $version 11 exit 0 12else 13 printf 'Updated to version %s\n' $version 14 sed -i "s/version = \"$UPDATE_NIX_OLD_VERSION\"/version = \"$version\"/" "$dirname/package.nix" 15fi 16 17printf '{\n' > "$dirname/sources.nix" 18 19while 20 read -r name 21 read -r url 22do 23 variant="${name#*-*-}" 24 variant="${variant%%.*}" 25 26 { 27 printf ' %s = {\n' "$variant" 28 printf ' url = \"%s\";\n' "$url" 29 printf ' sha256 = \"%s\";\n' "$(nix-prefetch-url "$url")" 30 printf ' };\n' 31 } >> "$dirname/sources.nix" 32done < <(jq -r '.assets[] | 33 select(.name | endswith(".tar.xz") and (contains("all") | not)) | 34 .name, .browser_download_url' <<<"$latest_release") 35 36printf '}\n' >> "$dirname/sources.nix"