Builds the structsd binary from source using Ignite CLI. After this procedure, structsd will be available on your PATH.
Two dependencies are required: Go 1.24.1+ and Ignite CLI.
wget https://go.dev/dl/go1.24.1.linux-amd64.tar.gz
sudo rm -rf /usr/local/go
sudo tar -C /usr/local -xzf go1.24.1.linux-amd64.tar.gz
rm go1.24.1.linux-amd64.tar.gz
If an older Go was installed via apt, remove it first: sudo apt remove -y golang-go
curl -OL https://go.dev/dl/go1.24.1.darwin-arm64.tar.gz
sudo rm -rf /usr/local/go
sudo tar -C /usr/local -xzf go1.24.1.darwin-arm64.tar.gz
rm go1.24.1.darwin-arm64.tar.gz
curl -OL https://go.dev/dl/go1.24.1.darwin-amd64.tar.gz
sudo rm -rf /usr/local/go
sudo tar -C /usr/local -xzf go1.24.1.darwin-amd64.tar.gz
rm go1.24.1.darwin-amd64.tar.gz
Alternatively on macOS: brew install go@1.24
Add to ~/.profile (or ~/.zshrc on macOS):
export PATH=$PATH:/usr/local/go/bin:~/go/bin
Reload: source ~/.profile (or source ~/.zshrc)
go version
Expected: go version go1.24.1 linux/amd64 (or darwin/arm64, etc.)
curl https://get.ignite.com/cli! | bash
ignite version
Clone the repository and build:
git clone https://github.com/playstructs/structsd.git
cd structsd
ignite chain build
The binary is installed to ~/go/bin/structsd. Since ~/go/bin is on your PATH (from step 1), it’s immediately available.
structsd version
To update to the latest version:
cd structsd
git pull origin main
ignite chain build
Run all verifications in sequence:
go version && ignite version && structsd version
If any command fails, revisit the corresponding step above.
structsd: command not found — Ensure ~/go/bin is on your PATH. Run ls ~/go/bin/structsd to confirm the binary exists.ignite: command not found — Re-run the Ignite CLI install. The curl command installs to /usr/local/bin/ignite.go: command not found — Ensure /usr/local/go/bin is on your PATH. Reload your shell profile.go version shows 1.24.1+. Older Go versions are not compatible./usr/local — Use sudo for the tar extraction. On shared systems, ask your administrator.