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"