From 60498c54ebba423f59af36388ce57cd33f2141cd Mon Sep 17 00:00:00 2001 From: Kevaundray Wedderburn Date: Sun, 11 May 2025 19:37:22 +0100 Subject: [PATCH] download script locally and run (zisk) --- scripts/sdk_installers/install_zisk_sdk.sh | 40 +++++++++++++++------- 1 file changed, 27 insertions(+), 13 deletions(-) diff --git a/scripts/sdk_installers/install_zisk_sdk.sh b/scripts/sdk_installers/install_zisk_sdk.sh index 248d703..e4db288 100755 --- a/scripts/sdk_installers/install_zisk_sdk.sh +++ b/scripts/sdk_installers/install_zisk_sdk.sh @@ -30,19 +30,33 @@ ensure_tool_installed "bash" "to run the ziskup installer" ensure_tool_installed "rustup" "for managing Rust toolchains (ZisK installs its own)" ensure_tool_installed "cargo" "as cargo-zisk is a cargo subcommand" -# Run ziskup installer script with --provingkey to get a full setup. -# This also installs the 'zisk' rust toolchain and cargo-zisk CLI. -echo "Running ziskup installer with --provingkey option..." -curl https://raw.githubusercontent.com/0xPolygonHermez/zisk/main/ziskup/install.sh | bash -s -- --1 +# Step 1: Download and run the script that installs the ziskup binary itself. +ZISKUP_INSTALLER_DOWNLOAD_PATH="/tmp/ziskup_install.sh" +echo "Downloading the script that installs the 'ziskup' binary to ${ZISKUP_INSTALLER_DOWNLOAD_PATH}..." +curl -L https://raw.githubusercontent.com/0xPolygonHermez/zisk/main/ziskup/install.sh -o "${ZISKUP_INSTALLER_DOWNLOAD_PATH}" +chmod +x "${ZISKUP_INSTALLER_DOWNLOAD_PATH}" -# ziskup installs tools like cargo-zisk to $HOME/.zisk/bin. -# Add this to PATH for the current script session so we can verify cargo-zisk. -ZISK_TOOLS_BIN_DIR="${HOME}/.zisk/bin" -if [ -d "${ZISK_TOOLS_BIN_DIR}" ] && [[ ":$PATH:" != *":${ZISK_TOOLS_BIN_DIR}:"* ]]; then - echo "Adding ${ZISK_TOOLS_BIN_DIR} to PATH for current script session." - export PATH="${ZISK_TOOLS_BIN_DIR}:$PATH" +echo "Running the 'ziskup' binary installer script..." +"${ZISKUP_INSTALLER_DOWNLOAD_PATH}" # This script installs $HOME/.zisk/bin/ziskup +rm "${ZISKUP_INSTALLER_DOWNLOAD_PATH}" # Clean up the downloaded installer script + +# Step 2: Ensure the installed ziskup binary is in PATH for this script session. +ZISK_BIN_DIR="${HOME}/.zisk/bin" +if [ -d "${ZISK_BIN_DIR}" ] && [[ ":$PATH:" != *":${ZISK_BIN_DIR}:"* ]]; then + echo "Adding ${ZISK_BIN_DIR} to PATH for current script session." + export PATH="${ZISK_BIN_DIR}:$PATH" fi +# Ensure the ziskup binary itself is now installed and executable +ensure_tool_installed "ziskup" "ZisK SDK manager tool" + +# Step 3: Now run the installed ziskup binary with non-interactive flags. +echo "Running 'ziskup --provingkey' to install ZisK components..." +# Export GH_RUNNER=true to ensure ziskup uses default non-interactive options. +export GH_RUNNER=true +ziskup --provingkey # This is the actual ziskup tool that processes --provingkey +unset GH_RUNNER + # Verify ZisK installation echo "Verifying ZisK installation..." @@ -62,17 +76,17 @@ else fi echo "Checking for cargo-zisk CLI tool (using +zisk toolchain)..." -# TODO: cargo +zisk zisk to fix +# cargo-zisk should be callable via `cargo +zisk zisk ...` if cargo +zisk zisk --version; then echo "cargo-zisk CLI tool verified successfully." else echo "Error: 'cargo +zisk zisk --version' failed." >&2 - echo " Attempting verification with cargo-zisk directly (if in PATH from ${ZISK_TOOLS_BIN_DIR})..." + echo " Attempting verification with cargo-zisk directly (if in PATH from ${ZISK_BIN_DIR})..." if command -v cargo-zisk &> /dev/null && cargo-zisk --version; then echo "cargo-zisk found directly in PATH and verified." else echo "Error: cargo-zisk also not found directly or 'cargo +zisk zisk --version' failed." >&2 - echo " Ensure ${ZISK_TOOLS_BIN_DIR} is effectively in PATH for new shells and check ziskup output." >&2 + echo " Ensure ${ZISK_BIN_DIR} is effectively in PATH for new shells and check ziskup output." >&2 exit 1 fi fi \ No newline at end of file