159e378cbb
GitOrigin-RevId: c04d5652cfa9742b1d519688f65d1bbccea9eb7e
44 lines
1.4 KiB
Bash
Executable file
44 lines
1.4 KiB
Bash
Executable file
#!/usr/bin/env nix-shell
|
|
#!nix-shell -i bash -p bash nix-update curl coreutils jq common-updater-scripts nix-prefetch
|
|
|
|
# adapted from pkgs/by-name/ya/yazi-unwrapped/update.sh
|
|
|
|
set -eou pipefail
|
|
|
|
NIXPKGS_DIR="$PWD"
|
|
SCRIPT_DIR="$(dirname "${BASH_SOURCE[0]}")"
|
|
|
|
# Get latest release
|
|
VIDDY_RELEASE=$(
|
|
curl --silent ${GITHUB_TOKEN:+-u ":$GITHUB_TOKEN"} \
|
|
https://api.github.com/repos/sachaos/viddy/releases/latest
|
|
)
|
|
|
|
# Get release information
|
|
latestBuildDate=$(echo "$VIDDY_RELEASE" | jq -r ".published_at")
|
|
latestVersion=$(echo "$VIDDY_RELEASE" | jq -r ".tag_name")
|
|
|
|
latestBuildDate="${latestBuildDate%T*}" # remove the timestamp and get the date
|
|
latestVersion="${latestVersion:1}" # remove first char 'v'
|
|
|
|
oldVersion=$(nix eval --raw -f "$NIXPKGS_DIR" viddy.version)
|
|
|
|
if [[ "$oldVersion" == "$latestVersion" ]]; then
|
|
echo "viddy is up-to-date: ${oldVersion}"
|
|
exit 0
|
|
fi
|
|
|
|
echo "Updating viddy"
|
|
|
|
# Version
|
|
update-source-version viddy "${latestVersion}"
|
|
|
|
pushd "$SCRIPT_DIR"
|
|
# Build date
|
|
sed -i 's#env.VERGEN_BUILD_DATE = "[^"]*"#env.VERGEN_BUILD_DATE = "'"${latestBuildDate}"'"#' default.nix
|
|
|
|
# Hashes
|
|
# https://github.com/msteen/nix-prefetch/issues/51
|
|
cargoHash=$(nix-prefetch --option extra-experimental-features flakes "{ sha256 }: (import $NIXPKGS_DIR {}).viddy.cargoDeps.overrideAttrs (_: { outputHash = sha256; })")
|
|
sed -i -E 's#\bcargoHash = ".*?"#cargoHash = "'"$cargoHash"'"#' default.nix
|
|
popd
|