mirror of
https://github.com/logos-messaging/logos-messaging-nim.git
synced 2026-01-02 14:03:06 +00:00
* Add foundry version in makefile and install scripts * revert to older verison of Anvil for rln tests and anvil_install fix * pin pnpm version to be installed as rln dep * source pnpm after new install * Add to github path * use npm to install pnpm for rln ci * Update foundry and pnpm versions in Makefile
52 lines
1.8 KiB
Bash
Executable File
52 lines
1.8 KiB
Bash
Executable File
#!/usr/bin/env bash
|
|
|
|
# Install Anvil
|
|
|
|
REQUIRED_FOUNDRY_VERSION="$1"
|
|
|
|
if command -v anvil &> /dev/null; then
|
|
# Foundry is already installed; check the current version.
|
|
CURRENT_FOUNDRY_VERSION=$(anvil --version 2>/dev/null | awk '{print $2}')
|
|
|
|
if [ -n "$CURRENT_FOUNDRY_VERSION" ]; then
|
|
# Compare CURRENT_FOUNDRY_VERSION < REQUIRED_FOUNDRY_VERSION using sort -V
|
|
lower_version=$(printf '%s\n%s\n' "$CURRENT_FOUNDRY_VERSION" "$REQUIRED_FOUNDRY_VERSION" | sort -V | head -n1)
|
|
|
|
if [ "$lower_version" != "$REQUIRED_FOUNDRY_VERSION" ]; then
|
|
echo "Anvil is already installed with version $CURRENT_FOUNDRY_VERSION, which is older than the required $REQUIRED_FOUNDRY_VERSION. Please update Foundry manually if needed."
|
|
fi
|
|
fi
|
|
else
|
|
BASE_DIR="${XDG_CONFIG_HOME:-$HOME}"
|
|
FOUNDRY_DIR="${FOUNDRY_DIR:-"$BASE_DIR/.foundry"}"
|
|
FOUNDRY_BIN_DIR="$FOUNDRY_DIR/bin"
|
|
|
|
echo "Installing Foundry..."
|
|
curl -L https://foundry.paradigm.xyz | bash
|
|
|
|
# Add Foundry to PATH for this script session
|
|
export PATH="$FOUNDRY_BIN_DIR:$PATH"
|
|
|
|
# Verify foundryup is available
|
|
if ! command -v foundryup >/dev/null 2>&1; then
|
|
echo "Error: foundryup installation failed or not found in $FOUNDRY_BIN_DIR"
|
|
exit 1
|
|
fi
|
|
|
|
# Run foundryup to install the required version
|
|
if [ -n "$REQUIRED_FOUNDRY_VERSION" ]; then
|
|
echo "Installing Foundry tools version $REQUIRED_FOUNDRY_VERSION..."
|
|
foundryup --install "$REQUIRED_FOUNDRY_VERSION"
|
|
else
|
|
echo "Installing latest Foundry tools..."
|
|
foundryup
|
|
fi
|
|
|
|
# Verify anvil was installed
|
|
if ! command -v anvil >/dev/null 2>&1; then
|
|
echo "Error: anvil installation failed"
|
|
exit 1
|
|
fi
|
|
|
|
echo "Anvil successfully installed: $(anvil --version)"
|
|
fi |