diff --git a/pkgs/by-name/bl/bloomeetunes/package.nix b/pkgs/by-name/bl/bloomeetunes/package.nix index c7be395f7e1aad..43f97366ef09de 100644 --- a/pkgs/by-name/bl/bloomeetunes/package.nix +++ b/pkgs/by-name/bl/bloomeetunes/package.nix @@ -16,8 +16,8 @@ flutter324.buildFlutterApplication rec { src = fetchFromGitHub { owner = "HemantKArya"; repo = "BloomeeTunes"; - tag = "v${version}+153"; - hash = "sha256-Zx64hu+f8b/epGR80Ql2z239oSBfBt9k7crIFJCLlm4="; + tag = "v${version}+154"; + hash = "sha256-D3L8tW6ZtUS9UNlykYGcz+V1qZOMARCLKf38d2KYel4="; }; pubspecLock = lib.importJSON ./pubspec.lock.json; @@ -51,6 +51,8 @@ flutter324.buildFlutterApplication rec { }" ''; + passthru.updateScript = ./update.sh; + meta = { description = "Cross-platform music app designed to bring you ad-free tunes from various sources"; homepage = "https://github.com/HemantKArya/BloomeeTunes"; diff --git a/pkgs/by-name/bl/bloomeetunes/update.sh b/pkgs/by-name/bl/bloomeetunes/update.sh new file mode 100755 index 00000000000000..d038f3c9b59547 --- /dev/null +++ b/pkgs/by-name/bl/bloomeetunes/update.sh @@ -0,0 +1,24 @@ +#!/usr/bin/env nix-shell +#!nix-shell -I nixpkgs=./. -i bash -p curl gnused jq yq nixVersions.latest bash coreutils common-updater-scripts + +set -eou pipefail + +ROOT="$(dirname "$(readlink -f "$0")")" + +latestTag=$(curl ${GITHUB_TOKEN:+-u ":$GITHUB_TOKEN"} -sL https://api.github.com/repos/HemantKArya/BloomeeTunes/releases/latest | jq --raw-output .tag_name) +latestVersion=$(echo "$latestTag" | sed 's/^v//' | grep -o '^[^+]*') +RunNumber=$(echo "$latestTag" | grep -o '[^+]*$') + +currentVersion=$(nix-instantiate --eval -E "with import ./. {}; bloomeetunes.version or (lib.getVersion bloomeetunes)" | tr -d '"') + +if [[ "$currentVersion" == "$latestVersion" ]]; then + echo "package is up-to-date: $currentVersion" + exit 0 +fi + +sed -i "s/\(tag = \"v\${version}+\)[0-9]\+/\1${RunNumber}/" "$ROOT/package.nix" + +hash=$(nix hash convert --hash-algo sha256 --to sri $(nix-prefetch-url --unpack "https://github.com/HemantKArya/BloomeeTunes/archive/refs/tags/${latestTag}.tar.gz")) +update-source-version bloomeetunes $latestVersion $hash + +curl https://raw.githubusercontent.com/HemantKArya/BloomeeTunes/${latestTag}/pubspec.lock | yq . >$ROOT/pubspec.lock.json