about summary refs log tree commit diff
path: root/pkgs/applications/blockchains/solana-validator
diff options
context:
space:
mode:
authorTheodore Ni <3806110+tjni@users.noreply.github.com>2023-07-07 23:02:01 -0700
committerTheodore Ni <3806110+tjni@users.noreply.github.com>2023-07-18 16:55:33 -0700
commitc06efc2173dfa38e30dfd4843f00b12a464285c9 (patch)
treeac863a6d9e493730e82f0e52422f625307a58f5f /pkgs/applications/blockchains/solana-validator
parentc249486edb141837f28af2afd5b3c1331899d626 (diff)
solana-validator: adapt update script to new nix-prefetch-github
The update script is also already broken and needs:

1. Add missing packages to the shebang.
2. Retrieve cargo hash from the proper package.

We also take the opportunity to switch ot using the newer "hash" and
"cargoHash" properties.
Diffstat (limited to 'pkgs/applications/blockchains/solana-validator')
-rw-r--r--pkgs/applications/blockchains/solana-validator/default.nix8
-rw-r--r--pkgs/applications/blockchains/solana-validator/pin.json4
-rwxr-xr-x[-rw-r--r--]pkgs/applications/blockchains/solana-validator/update.sh18
3 files changed, 15 insertions, 15 deletions
diff --git a/pkgs/applications/blockchains/solana-validator/default.nix b/pkgs/applications/blockchains/solana-validator/default.nix
index 897968e25063e..d91da1db8fe2c 100644
--- a/pkgs/applications/blockchains/solana-validator/default.nix
+++ b/pkgs/applications/blockchains/solana-validator/default.nix
@@ -42,8 +42,8 @@
 let
   pinData = lib.importJSON ./pin.json;
   version = pinData.version;
-  sha256 = pinData.sha256;
-  cargoSha256 = pinData.cargoSha256;
+  hash = pinData.hash;
+  cargoHash = pinData.cargoHash;
 in
 rustPlatform.buildRustPackage rec {
   pname = "solana-validator";
@@ -53,11 +53,11 @@ rustPlatform.buildRustPackage rec {
     owner = "solana-labs";
     repo = "solana";
     rev = "v${version}";
-    inherit sha256;
+    inherit hash;
   };
 
   # partly inspired by https://github.com/obsidiansystems/solana-bridges/blob/develop/default.nix#L29
-  inherit cargoSha256;
+  inherit cargoHash;
 
   cargoBuildFlags = builtins.map (n: "--bin=${n}") solanaPkgs;
 
diff --git a/pkgs/applications/blockchains/solana-validator/pin.json b/pkgs/applications/blockchains/solana-validator/pin.json
index 175cd79ad1bcb..4747c3e934343 100644
--- a/pkgs/applications/blockchains/solana-validator/pin.json
+++ b/pkgs/applications/blockchains/solana-validator/pin.json
@@ -1,5 +1,5 @@
 {
   "version": "1.10.35",
-  "sha256": "sha256-y7+ogMJ5E9E/+ZaTCHWOQWG7iR+BGuVqvlNUDT++Ghc=",
-  "cargoSha256": "sha256-idlu9qkh2mrF6MxstRcvemKrtTGNY/InBnIDqRvDQPs"
+  "hash": "sha256-y7+ogMJ5E9E/+ZaTCHWOQWG7iR+BGuVqvlNUDT++Ghc=",
+  "cargoHash": "sha256-idlu9qkh2mrF6MxstRcvemKrtTGNY/InBnIDqRvDQPs"
 }
diff --git a/pkgs/applications/blockchains/solana-validator/update.sh b/pkgs/applications/blockchains/solana-validator/update.sh
index ffd8b0010cc26..cb8aa43ac61ee 100644..100755
--- a/pkgs/applications/blockchains/solana-validator/update.sh
+++ b/pkgs/applications/blockchains/solana-validator/update.sh
@@ -1,9 +1,9 @@
 #!/usr/bin/env nix-shell
-#! nix-shell -i oil -p jq sd nix-prefetch-github ripgrep
+#! nix-shell -i oil -p jq moreutils nix-prefetch-github gnused
 
 # TODO set to `verbose` or `extdebug` once implemented in oil
 shopt --set xtrace
-# we need failures inside of command subs to get the correct cargoSha256
+# we need failures inside of command subs to get the correct cargoHash
 shopt --unset inherit_errexit
 
 const directory = $(dirname $0 | xargs realpath)
@@ -11,23 +11,23 @@ const owner = "solana-labs"
 const repo = "solana"
 const latest_rev = $(curl -q https://api.github.com/repos/${owner}/${repo}/releases/latest | \
   jq -r '.tag_name')
-const latest_version = $(echo $latest_rev | sd 'v' '')
+const latest_version = $(echo ${latest_rev#v})
 const current_version = $(jq -r '.version' $directory/pin.json)
 if ("$latest_version" === "$current_version") {
   echo "solana is already up-to-date"
   return 0
 } else {
   const tarball_meta = $(nix-prefetch-github $owner $repo --rev "$latest_rev")
-  const tarball_hash = "sha256-$(echo $tarball_meta | jq -r '.sha256')"
+  const tarball_hash = $(echo $tarball_meta | jq -r '.hash')
 
   jq ".version = \"$latest_version\" | \
-      .\"sha256\" = \"$tarball_hash\" | \
-      .\"cargoSha256\" = \"\"" $directory/pin.json | sponge $directory/pin.json
+      .\"hash\" = \"$tarball_hash\" | \
+      .\"cargoHash\" = \"\"" $directory/pin.json | sponge $directory/pin.json
 
-  const new_cargo_sha256 = $(nix-build -A solana-testnet 2>&1 | \
+  const new_cargo_hash = $(nix-build -A solana-validator 2>&1 | \
     tail -n 2 | \
     head -n 1 | \
-    sd '\s+got:\s+' '')
+    sed 's/\s*got:\s*//')
 
-  jq ".cargoSha256 = \"$new_cargo_sha256\"" $directory/pin.json | sponge $directory/pin.json
+  jq ".cargoHash = \"$new_cargo_hash\"" $directory/pin.json | sponge $directory/pin.json
 }