From ecdcdeb29df5f2744ebcb7cfdc3078790dc312a8 Mon Sep 17 00:00:00 2001 From: dr56ekgbb <dr56ekgbb@mozmail.com> Date: Thu, 10 Oct 2024 02:47:10 +0800 Subject: [PATCH 1/3] waveterm: add update script --- pkgs/by-name/wa/waveterm/package.nix | 42 +++++++++++++++------------- pkgs/by-name/wa/waveterm/update.sh | 25 +++++++++++++++++ 2 files changed, 48 insertions(+), 19 deletions(-) create mode 100755 pkgs/by-name/wa/waveterm/update.sh diff --git a/pkgs/by-name/wa/waveterm/package.nix b/pkgs/by-name/wa/waveterm/package.nix index cc1053d58fe2..03b8fd2c0732 100644 --- a/pkgs/by-name/wa/waveterm/package.nix +++ b/pkgs/by-name/wa/waveterm/package.nix @@ -29,35 +29,36 @@ wrapGAppsHook3, udev, libGL, + gitUpdater, }: let - inherit (stdenv.hostPlatform) system; - throwSystem = throw "Unsupported system: ${system}"; - pname = "waveterm"; version = "0.8.8"; - suffix = - { - x86_64-linux = "waveterm-linux-x64-${version}.zip"; - aarch64-linux = "waveterm-linux-arm64-${version}.zip"; - x86_64-darwin = "Wave-darwin-universal-${version}.zip "; - aarch64-darwin = "Wave-darwin-arm64-${version}.zip"; - } - .${system} or throwSystem; - - src = fetchurl { - url = "https://github.com/wavetermdev/waveterm/releases/download/v${version}/${suffix}"; - hash = - { + src = + let + inherit (stdenv.hostPlatform) system; + selectSystem = attrs: attrs.${system} or (throw "Unsupported system: ${system}"); + suffix = selectSystem { + x86_64-linux = "waveterm-linux-x64-${version}.zip"; + aarch64-linux = "waveterm-linux-arm64-${version}.zip"; + x86_64-darwin = "Wave-darwin-universal-${version}.zip "; + aarch64-darwin = "Wave-darwin-arm64-${version}.zip"; + }; + hash = selectSystem { x86_64-linux = "sha256-hRpJTFVoBQZyJD06FTRbBPj/1DlYlDWPRjJ1IKeK7Cs="; aarch64-linux = "sha256-T3VqsoHhPYYrAe/dEd0SUH+G4jpHjKpJTrFy8/AgoKI="; x86_64-darwin = "sha256-UlyNl2Qu59L4hnK8rTeUV30YVD45L7ub5SP8f97aJrw="; aarch64-darwin = "sha256-cP+z8DQsNBJc3p57xQdGqqq7jvYcRQRIa+P+6kD3eCc="; - } - .${system} or throwSystem; - }; + }; + in + fetchurl { + url = "https://github.com/wavetermdev/waveterm/releases/download/v${version}/${suffix}"; + inherit hash; + }; + + passthru.updateScript = ./update.sh; desktopItems = [ (makeDesktopItem { @@ -112,6 +113,8 @@ let src desktopItems unpackPhase + meta + passthru ; nativeBuildInputs = [ @@ -172,6 +175,7 @@ let src unpackPhase meta + passthru ; nativeBuildInputs = [ diff --git a/pkgs/by-name/wa/waveterm/update.sh b/pkgs/by-name/wa/waveterm/update.sh new file mode 100755 index 000000000000..7950a65e8dfa --- /dev/null +++ b/pkgs/by-name/wa/waveterm/update.sh @@ -0,0 +1,25 @@ +#!/usr/bin/env nix-shell +#!nix-shell -i bash -p bash curl coreutils jq common-updater-scripts + +latestTag=$(curl https://api.github.com/repos/wavetermdev/waveterm/releases/latest | jq -r ".tag_name") +latestVersion="$(expr "$latestTag" : 'v\(.*\)')" +currentVersion=$(nix-instantiate --eval -E "with import ./. {}; waveterm.version" | tr -d '"') + +echo "latest version: $latestVersion" +echo "current version: $currentVersion" + +if [[ "$latestVersion" == "$currentVersion" ]]; then + echo "package is up-to-date" + exit 0 +fi +for i in \ + "x86_64-linux waveterm-linux-x64" \ + "aarch64-linux waveterm-linux-arm64" \ + "x86_64-darwin Wave-darwin-universal" \ + "aarch64-darwin Wave-darwin-arm64"; do + set -- $i + prefetch=$(nix-prefetch-url "https://github.com/wavetermdev/waveterm/releases/download/v$latestVersion/$2-$latestVersion.zip") + hash=$(nix-hash --type sha256 --to-sri $prefetch) + + update-source-version waveterm $latestVersion $hash --system=$1 --ignore-same-version +done From 0e9589b19ec3854978a14b603ce629b5ecf1b193 Mon Sep 17 00:00:00 2001 From: dr56ekgbb <dr56ekgbb@mozmail.com> Date: Thu, 10 Oct 2024 05:50:55 +0800 Subject: [PATCH 2/3] waveterm: 0.8.8 -> 0.8.9 --- pkgs/by-name/wa/waveterm/package.nix | 11 +++++------ 1 file changed, 5 insertions(+), 6 deletions(-) diff --git a/pkgs/by-name/wa/waveterm/package.nix b/pkgs/by-name/wa/waveterm/package.nix index 03b8fd2c0732..af588aa2b97f 100644 --- a/pkgs/by-name/wa/waveterm/package.nix +++ b/pkgs/by-name/wa/waveterm/package.nix @@ -29,12 +29,11 @@ wrapGAppsHook3, udev, libGL, - gitUpdater, }: let pname = "waveterm"; - version = "0.8.8"; + version = "0.8.9"; src = let @@ -47,10 +46,10 @@ let aarch64-darwin = "Wave-darwin-arm64-${version}.zip"; }; hash = selectSystem { - x86_64-linux = "sha256-hRpJTFVoBQZyJD06FTRbBPj/1DlYlDWPRjJ1IKeK7Cs="; - aarch64-linux = "sha256-T3VqsoHhPYYrAe/dEd0SUH+G4jpHjKpJTrFy8/AgoKI="; - x86_64-darwin = "sha256-UlyNl2Qu59L4hnK8rTeUV30YVD45L7ub5SP8f97aJrw="; - aarch64-darwin = "sha256-cP+z8DQsNBJc3p57xQdGqqq7jvYcRQRIa+P+6kD3eCc="; + x86_64-linux = "sha256-C3i/NGMctc8DwR7b7ec4gq9VClvehQ0wuovH++EPPqE="; + aarch64-linux = "sha256-iNCvDGLa5pe19d1GWZ2SZ29DZ1h7T80OK7zAs9hHhAQ="; + x86_64-darwin = "sha256-SaUoW4pnSFJsUioNfXukZGc5j0+2yyZrydNOO6oqKyo="; + aarch64-darwin = "sha256-wNiLtriTL5Ohcma8Sop3stsqKLJyUpHihoMlylGxTRI="; }; in fetchurl { From e5c73a5dbd60e6e17d8dbecd235a75cc564d3d8f Mon Sep 17 00:00:00 2001 From: aucub <78630225+aucub@users.noreply.github.com> Date: Thu, 10 Oct 2024 19:36:08 +0000 Subject: [PATCH 3/3] waveterm: 0.8.9 -> 0.8.10 --- pkgs/by-name/wa/waveterm/package.nix | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/pkgs/by-name/wa/waveterm/package.nix b/pkgs/by-name/wa/waveterm/package.nix index af588aa2b97f..9d13d24abdc8 100644 --- a/pkgs/by-name/wa/waveterm/package.nix +++ b/pkgs/by-name/wa/waveterm/package.nix @@ -33,7 +33,7 @@ let pname = "waveterm"; - version = "0.8.9"; + version = "0.8.10"; src = let @@ -46,10 +46,10 @@ let aarch64-darwin = "Wave-darwin-arm64-${version}.zip"; }; hash = selectSystem { - x86_64-linux = "sha256-C3i/NGMctc8DwR7b7ec4gq9VClvehQ0wuovH++EPPqE="; - aarch64-linux = "sha256-iNCvDGLa5pe19d1GWZ2SZ29DZ1h7T80OK7zAs9hHhAQ="; - x86_64-darwin = "sha256-SaUoW4pnSFJsUioNfXukZGc5j0+2yyZrydNOO6oqKyo="; - aarch64-darwin = "sha256-wNiLtriTL5Ohcma8Sop3stsqKLJyUpHihoMlylGxTRI="; + x86_64-linux = "sha256-jhXHuzHMwo9U5B+FA2xAreOYRVroMCXqDo+9pjAyh0Q="; + aarch64-linux = "sha256-JnKkjG67uvYNod+uosJ+svTAm9bulJzTpza3jQie1yQ="; + x86_64-darwin = "sha256-Dk/pKZrqkjKc7WEGkrLdZdgUEaz8ndXjZuINyVNxEa8="; + aarch64-darwin = "sha256-FgBbUrp+Z9K4gmM4mew0NQ2yIjuC+cgYrrYkjv0Ohhg="; }; in fetchurl {