From 20985100c41563eb427a475bfc383cf780b8e995 Mon Sep 17 00:00:00 2001 From: Hythera <87016780+Hythera@users.noreply.github.com> Date: Fri, 10 Apr 2026 12:42:00 +0200 Subject: [PATCH] meteor: add passthru.updateScript --- pkgs/by-name/me/meteor/package.nix | 2 ++ pkgs/by-name/me/meteor/update.sh | 20 ++++++++++++++++++++ 2 files changed, 22 insertions(+) create mode 100755 pkgs/by-name/me/meteor/update.sh diff --git a/pkgs/by-name/me/meteor/package.nix b/pkgs/by-name/me/meteor/package.nix index 2179b87fd1a8..cb31439a7830 100644 --- a/pkgs/by-name/me/meteor/package.nix +++ b/pkgs/by-name/me/meteor/package.nix @@ -114,6 +114,8 @@ stdenv.mkDerivation { done ''; + passthru.updateScript = ./update.sh; + meta = { description = "Complete open source platform for building web and mobile apps in pure JavaScript"; homepage = "https://www.meteor.com/"; diff --git a/pkgs/by-name/me/meteor/update.sh b/pkgs/by-name/me/meteor/update.sh new file mode 100755 index 000000000000..08e0dfd4f381 --- /dev/null +++ b/pkgs/by-name/me/meteor/update.sh @@ -0,0 +1,20 @@ +#!/usr/bin/env nix-shell +#!nix-shell -i bash -p bash common-updater-scripts curl nix-update + +releaseInfo=$(curl https://install.meteor.com) +latestVersion=$(grep <<<"$releaseInfo" -oP 'RELEASE="\K[^"]+') +currentVersion=$(nix eval --raw -f . meteor.version) + +echo "latest version: $latestVersion" +echo "current version: $currentVersion" + +if [[ "$latestVersion" == "$currentVersion" ]]; then + echo "package is up-to-date" + exit 0 +fi + +systems=$(nix eval --json -f . meteor.meta.platforms | jq --raw-output '.[]') +for system in $systems; do + hash=$(nix --extra-experimental-features nix-command hash convert --to sri --hash-algo sha256 $(nix-prefetch-url $(nix eval --raw -f . meteor.src.url --system "$system"))) + update-source-version meteor $latestVersion $hash --system=$system --ignore-same-version --ignore-same-hash +done