From 18214c6b8f250662ca7ba98cfc8a60b2cae02681 Mon Sep 17 00:00:00 2001 From: emaryn Date: Sun, 16 Mar 2025 23:29:13 +0800 Subject: [PATCH] cherry-studio: update update script --- pkgs/by-name/ch/cherry-studio/package.nix | 3 +-- pkgs/by-name/ch/cherry-studio/update.sh | 16 ++++++++++++++++ 2 files changed, 17 insertions(+), 2 deletions(-) create mode 100755 pkgs/by-name/ch/cherry-studio/update.sh diff --git a/pkgs/by-name/ch/cherry-studio/package.nix b/pkgs/by-name/ch/cherry-studio/package.nix index b8c7471b0e55..67fdd012e608 100644 --- a/pkgs/by-name/ch/cherry-studio/package.nix +++ b/pkgs/by-name/ch/cherry-studio/package.nix @@ -9,7 +9,6 @@ writableTmpDirAsHomeHook, makeDesktopItem, copyDesktopItems, - nix-update-script, commandLineArgs ? "", }: @@ -112,7 +111,7 @@ stdenvNoCC.mkDerivation (finalAttrs: { runHook postInstall ''; - passthru.updateScript = nix-update-script { }; + passthru.updateScript = ./update.sh; meta = { description = "Desktop client that supports for multiple LLM providers"; diff --git a/pkgs/by-name/ch/cherry-studio/update.sh b/pkgs/by-name/ch/cherry-studio/update.sh new file mode 100755 index 000000000000..78609183ed43 --- /dev/null +++ b/pkgs/by-name/ch/cherry-studio/update.sh @@ -0,0 +1,16 @@ +#!/usr/bin/env nix-shell +#!nix-shell -i bash -p curl gnused jq nix bash coreutils nix-update + +set -eou pipefail + +latestTag=$(curl ${GITHUB_TOKEN:+-u ":$GITHUB_TOKEN"} -sL https://api.github.com/repos/CherryHQ/cherry-studio/releases/latest | jq --raw-output .tag_name) +latestVersion=$(echo "$latestTag" | sed 's/^v//') + +currentVersion=$(nix-instantiate --eval -E "with import ./. {}; cherry-studio.version or (lib.getVersion cherry-studio)" | tr -d '"') + +if [[ "$currentVersion" == "$latestVersion" ]]; then + echo "package is up-to-date: $currentVersion" + exit 0 +fi + +nix-update cherry-studio --version "$latestVersion"