1#!/usr/bin/env nix-shell
2#!nix-shell -i bash -p curl jq common-updater-scripts
3
4set -euo pipefail
5
6latestVersion=$(curl -sL https://storage.googleapis.com/dart-archive/channels/stable/release/latest/VERSION | jq --raw-output .version)
7currentVersion=$(nix eval --raw -f . dart.version)
8
9if [[ "$latestVersion" == "$currentVersion" ]]; then
10 exit 0
11fi
12
13MY_PATH=$(dirname $(realpath "$0"))
14
15update-source-version dart $latestVersion --file=$MY_PATH/sources.nix
16
17systems=$(nix eval --json -f . dart.meta.platforms | jq --raw-output '.[]')
18for system in $systems; do
19 hash=$(nix hash convert --to sri --hash-algo sha256 $(nix-prefetch-url $(nix eval --raw -f . dart.src.url --system "$system")))
20 update-source-version dart $latestVersion $hash --file=$MY_PATH/sources.nix --system=$system --ignore-same-version --ignore-same-hash
21done