diff --git a/evm/installing-seid-cli.mdx b/evm/installing-seid-cli.mdx index d0d726f..9ef82c0 100644 --- a/evm/installing-seid-cli.mdx +++ b/evm/installing-seid-cli.mdx @@ -12,24 +12,55 @@ The `seid` CLI is the command-line tool for interacting with the Sei blockchain. ## Prerequisites -- Go 1.23+: Installation instructions are available [here](https://go.dev/doc/install). +- Go 1.23+ (build from source only): Installation instructions are available [here](https://go.dev/doc/install). The prebuilt binary has no prerequisites. ## Installation -To install seid, locate the version you wish to use on the [sei-chain releases page](https://github.com/sei-protocol/sei-chain/releases). A list of the currently used versions on mainnet and testnet are displayed right below. +To install `seid`, locate the version you wish to use on the [sei-chain releases page](https://github.com/sei-protocol/sei-chain/releases). A list of the currently used versions on mainnet and testnet are displayed right below. -Then, execute the following commands with the version that you picked: - -```bash -git clone https://github.com/sei-protocol/sei-chain -cd sei-chain -git checkout [VERSION] -make install -``` - -You can verify that seid was installed correctly by running: + + + Each release attaches a statically linked `seid` build for `linux/amd64` with no + runtime dependencies: + + ```bash + VERSION= # e.g. v6.6.0 — see the version table above + FILE=sei-chain_${VERSION#v}_linux_x86_64.tar.gz # asset filenames omit the leading v + + curl -fLO https://github.com/sei-protocol/sei-chain/releases/download/${VERSION}/${FILE} + curl -fLO https://github.com/sei-protocol/sei-chain/releases/download/${VERSION}/checksums.txt + + # Verify integrity before trusting the binary; extract and install only if it passes + sha256sum -c checksums.txt --ignore-missing \ + && tar -xzf ${FILE} seid \ + && sudo install -m 0755 seid /usr/local/bin/seid + ``` + + + Prebuilt binaries are `linux/amd64` only and omit hardware Ledger support. On + other architectures, or if you sign with a Ledger device, build from source. + + + + Previously installed with `make install`? An older copy in `$(go env GOPATH)/bin` + can shadow `/usr/local/bin/seid` depending on your `PATH` order — `which -a seid` + lists every copy. + + + + + ```bash + git clone https://github.com/sei-protocol/sei-chain + cd sei-chain + git checkout + make install + ``` + + + +You can verify that `seid` was installed correctly by running: ```bash seid version @@ -37,7 +68,7 @@ seid version ## Troubleshooting Installation -If you encounter an error like `command not found: seid`, you may need to set your GOPATH environment variable. +If you built from source and encounter an error like `command not found: seid`, you may need to set your GOPATH environment variable. - Use `go env GOPATH` to find your GOPATH - Add the following lines to your `~/.bashrc` or `~/.zshrc`: @@ -268,8 +299,12 @@ This will remove the specified wallet from your local keyring. Be cautious, as t ## Uninstalling seid -If you need to remove `seid` from your system, you can delete the binary from your `$GOPATH/bin` directory: +If you need to remove `seid` from your system, delete the binary from wherever it was installed: ```bash +# Prebuilt binary install +sudo rm /usr/local/bin/seid + +# Build-from-source install rm $(go env GOPATH)/bin/seid ``` diff --git a/node/index.mdx b/node/index.mdx index 3b7977a..d807a29 100644 --- a/node/index.mdx +++ b/node/index.mdx @@ -63,6 +63,9 @@ timedatectl ##### Install Go +Only needed if you build `seid` from source — the prebuilt binary and Docker +install paths in the next step don't require Go. + Suggested Version: Go 1.24.x (required for seid v6.3+) ###### Installation Steps @@ -85,49 +88,89 @@ go version -##### Install Sei Binary +##### Install the `seid` binary -```bash -# Clone repository and install -git clone https://github.com/sei-protocol/sei-chain.git -cd sei-chain -git checkout # Replace with specific version -make install +See the Network Versions table above for the current recommended version. -# Verify installation -seid version -``` + + + Each release attaches a statically linked `seid` build for `linux/amd64` with no + runtime dependencies: no Go toolchain and no shared libraries to install. -See Network Versions table above for current recommended version. + ```bash + VERSION= # e.g. v6.6.0 — see the Network Versions table above + FILE=sei-chain_${VERSION#v}_linux_x86_64.tar.gz # asset filenames omit the leading v - - Official Docker images are available at GitHub Container Registry. + curl -fLO https://github.com/sei-protocol/sei-chain/releases/download/${VERSION}/${FILE} + curl -fLO https://github.com/sei-protocol/sei-chain/releases/download/${VERSION}/checksums.txt - ```bash - # Pull the latest version - docker pull ghcr.io/sei-protocol/sei:latest + # Verify integrity before trusting the binary; extract and install only if it passes + sha256sum -c checksums.txt --ignore-missing \ + && tar -xzf ${FILE} seid \ + && sudo install -m 0755 seid /usr/local/bin/seid - # Or pull a specific version (recommended) - docker pull ghcr.io/sei-protocol/sei:v6.3.1 - ``` + # Verify installation + seid version + ``` - Available architectures: linux/amd64 and linux/arm64. - + + Prebuilt binaries are `linux/amd64` only, omit hardware Ledger support, and + don't include the optional [RocksDB state-store backend](/node/rocksdb-backend). + On other architectures, or if you sign with a Ledger device, build from source + or use Docker; a RocksDB-enabled `seid` must be built from source. + - - If you encounter an error like `command not found: seid`, you may need to set your GOPATH environment variable. + + Switching from a previous `make install` build? Remove the old copy + (`rm -f "$(go env GOPATH)/bin/seid"`) or make sure your service unit points at + `/usr/local/bin/seid` — `which -a seid` lists every copy on your `PATH`. + + - Add the following to your `~/.bashrc` or `~/.zshrc`: + + Requires Go and a C toolchain (see the Environment Setup step above). - ```bash - export GOPATH=$(go env GOPATH) - export PATH=$PATH:$GOPATH/bin - ``` + ```bash + # Clone repository and install + git clone https://github.com/sei-protocol/sei-chain.git + cd sei-chain + git checkout # Replace with specific version + make install - Then reload your shell with `source ~/.bashrc` or `source ~/.zshrc`. + # Verify installation + seid version + ``` - For more information see [here](https://pkg.go.dev/cmd/go#hdr-GOPATH_environment_variable). - + + If you encounter an error like `command not found: seid`, you may need to set your GOPATH environment variable. + + Add the following to your `~/.bashrc` or `~/.zshrc`: + + ```bash + export GOPATH=$(go env GOPATH) + export PATH=$PATH:$GOPATH/bin + ``` + + Then reload your shell with `source ~/.bashrc` or `source ~/.zshrc`. + + For more information see [here](https://pkg.go.dev/cmd/go#hdr-GOPATH_environment_variable). + + + + + Official Docker images are available at GitHub Container Registry. + + ```bash + # Pull the latest version + docker pull ghcr.io/sei-protocol/sei:latest + + # Or pull a specific version (recommended) + docker pull ghcr.io/sei-protocol/sei:v6.3.1 + ``` + + Available architectures: linux/amd64 and linux/arm64. + + ##### Initialize Chain Files diff --git a/node/node-operators.mdx b/node/node-operators.mdx index 04e2fc6..a5ee9eb 100644 --- a/node/node-operators.mdx +++ b/node/node-operators.mdx @@ -1583,23 +1583,55 @@ EOF ## Update Procedures + + Upgrade with the same method you originally installed with: `make install` + writes `seid` to `$(go env GOPATH)/bin`, while the prebuilt-binary flow + installs to `/usr/local/bin`. Mixing the two leaves separate binaries on your + `PATH`, and your service unit may keep running the old version — + `which -a seid` lists every copy. + + ### Minor Updates For minor updates that are non-consensus-breaking: -```bash -# Stop node -sudo systemctl stop seid + + + ```bash + # Stop node + sudo systemctl stop seid + + # Download and verify the new release binary + VERSION= # the new release tag, e.g. v6.6.0 + FILE=sei-chain_${VERSION#v}_linux_x86_64.tar.gz # asset filenames omit the leading v + + curl -fLO https://github.com/sei-protocol/sei-chain/releases/download/${VERSION}/${FILE} + curl -fLO https://github.com/sei-protocol/sei-chain/releases/download/${VERSION}/checksums.txt + sha256sum -c checksums.txt --ignore-missing \ + && tar -xzf ${FILE} seid \ + && sudo install -m 0755 seid /usr/local/bin/seid + + # Restart node + sudo systemctl restart seid + ``` + -# Update binary -cd sei-chain -git fetch --all -git checkout [new-version] -make install + + ```bash + # Stop node + sudo systemctl stop seid -# Restart node -sudo systemctl restart seid -``` + # Update binary + cd sei-chain + git fetch --all + git checkout + make install + + # Restart node + sudo systemctl restart seid + ``` + + ### Major Updates @@ -1611,18 +1643,38 @@ For major upgrades that introduce state-breaking changes: 3. Update/replace the binary 4. Restart the node. -```bash -# After node halts -cd sei-chain -git pull -git checkout [new-version] -make install -sudo systemctl restart seid -``` + + + ```bash + # After node halts + VERSION= # the new release tag, e.g. v6.6.0 + FILE=sei-chain_${VERSION#v}_linux_x86_64.tar.gz + + curl -fLO https://github.com/sei-protocol/sei-chain/releases/download/${VERSION}/${FILE} + curl -fLO https://github.com/sei-protocol/sei-chain/releases/download/${VERSION}/checksums.txt + sha256sum -c checksums.txt --ignore-missing \ + && tar -xzf ${FILE} seid \ + && sudo install -m 0755 seid /usr/local/bin/seid + + sudo systemctl restart seid + ``` + + + + ```bash + # After node halts + cd sei-chain + git pull + git checkout + make install + sudo systemctl restart seid + ``` + + - Build the upgrade before the halt-height so you can quickly replace it - with minimal downtime. + Download the release archive (or build the new binary) ahead of the + halt-height so the swap takes seconds at upgrade time. ## Performance Optimization