Install on Linux

74 statically-linked ELF binaries — zero dependencies, one command install. Runs on any x86_64 or ARM64 Linux with kernel 3.2+.

74 Static Binaries
0 Zero Dependencies
3.2+ Kernel 3.2+

Quick Install

One command. Downloads the latest release from dist.scorpiox.net, verifies SHA-256 checksum, extracts 74 static binaries to /usr/local/bin, and sets up the update command.

Terminal
curl -fsSL "https://get.scorpiox.net?platform=linux" | bash

The installer uses sudo when not running as root. If you prefer a user-local install, see the manual steps below.

Manual install (user-local, no sudo)
# Download tarball curl -fsSL "https://dist.scorpiox.net/scorpiox/main/scorpiox_code.tar.gz" -o /tmp/scorpiox.tar.gz # Verify checksum curl -fsSL "https://dist.scorpiox.net/scorpiox/main/scorpiox_code.tar.gz.sha256" | sha256sum -c - # Extract to ~/.scorpiox/bin mkdir -p ~/.scorpiox/bin tar -xzf /tmp/scorpiox.tar.gz -C ~/.scorpiox/bin chmod +x ~/.scorpiox/bin/scorpiox* ~/.scorpiox/bin/sx # Add to PATH (bash) echo 'export PATH="$HOME/.scorpiox/bin:$PATH"' >> ~/.bashrc source ~/.bashrc

Requirements

Because every binary is statically linked with musl libc, system requirements are minimal.

RequirementDetails
OSAny Linux distribution
Kernel3.2+ (any modern distro qualifies)
Architecturex86_64 or aarch64 (ARM64)
Disk space~120 MB for all 74 binaries
RAMMinimal — each binary is small and standalone
Runtime depsNone — fully static musl binaries
Networkcurl or wget (for installer download only)
unshare (from util-linux) is recommended for container features. The installer checks for it automatically.

What the Installer Does

1

Check environment

Verifies Linux OS, detects CPU architecture (x86_64 or aarch64), checks for unshare.

2

Create install directory

Creates /usr/local/bin if needed. Uses sudo when not running as root.

3

Download & verify

Fetches the tarball from dist.scorpiox.net/scorpiox/main/ and validates the SHA-256 checksum. Aborts on mismatch unless --no-verify is passed.

4

Extract binaries

Unpacks all 74 static ELF binaries to /usr/local/bin and sets executable permissions.

5

Create scorpiox-update

Writes a self-contained updater script to /usr/local/bin/scorpiox-update. Supports --commit <hash> for pinning to a specific build.

Supported Architectures

ArchitectureTarballCompilerC LibraryBinaries
x86_64 scorpiox_code.tar.gz gcc (musl-cross via Alpine) musl 74
aarch64 (ARM64) scorpiox_code_arm64.tar.gz aarch64-linux-gnu-gcc (cross-compile) musl 74

The installer auto-detects architecture via uname -m and downloads the correct tarball.

Verify Installation

After installation, verify everything is working:

# Check scorpiox is in PATH sx --version scorpiox-code v1.x.x (linux-x64, musl-static) # List all installed binaries ls /usr/local/bin/scorpiox* | wc -l 74 # Verify binary is static (no dynamic deps) ldd /usr/local/bin/sx not a dynamic executable # Run a quick test sx "hello world"

Update

The installer creates scorpiox-update in your PATH. It re-downloads and replaces all binaries with the latest build.

# Update to latest (default branch) scorpiox-update # Update to a specific branch scorpiox-update dev # Pin to exact commit scorpiox-update --commit f314b04 # Skip checksum (not recommended) scorpiox-update --no-verify

Post-Install Configuration

Scorpiox Code reads configuration from scorpiox-env.txt in priority order:

1st <exe_dir>/scorpiox-env.txt
2nd ~/.scorpiox/scorpiox-env.txt
3rd .scorpiox/scorpiox-env.txt
~/.scorpiox/scorpiox-env.txt — minimal setup
# Provider (claude_code, openai, google, etc.) SX_PROVIDER=claude_code # Your API key ANTHROPIC_API_KEY=sk-ant-... # Model selection CLAUDE_MODEL=sonnet # Container backend (Linux) CONTAINER_BACKEND=unshare # Enable thinking mode CLAUDE_THINKING=true

See Configuration Reference for all 254 available settings.

Container Support

Linux has native support for rootless containers via user namespaces. Scorpiox Code uses scorpiox-unshare by default — no Docker or Podman required.

🔒 scorpiox-unshare

Rootless containers using Linux user namespaces. Default backend. No daemon, no privileges. Set CONTAINER_BACKEND=unshare.

🐳 Podman / Docker

Use system Podman or Docker instead. Set CONTAINER_BACKEND=podman or CONTAINER_BACKEND=docker.

💻 KVM (x86_64)

Full virtual machines via scorpiox-vm. Requires KVM-capable CPU. Provides complete isolation with its own kernel.

⚡ Container Init

scorpiox-init runs as PID 1 inside containers. Handles signal forwarding and orphan reaping. No external init system needed.

Container quick check
# Verify unshare support unshare --user --map-root-user whoami root # If that fails, enable user namespaces: sudo sysctl -w kernel.unprivileged_userns_clone=1

Uninstall

Since Scorpiox Code is just static binaries in a single directory, uninstalling is straightforward:

# Remove all scorpiox binaries sudo rm -f /usr/local/bin/scorpiox* /usr/local/bin/sx # Remove config (optional) rm -rf ~/.scorpiox

Troubleshooting

Permission denied

Run with sudo or use the manual user-local install to ~/.scorpiox/bin.

SHA-256 mismatch

Network issue or CDN cache. Wait a few minutes and retry. Only use --no-verify if you understand the risk.

unshare: operation not permitted

User namespaces disabled. Run sudo sysctl -w kernel.unprivileged_userns_clone=1 or use CONTAINER_BACKEND=podman.

Command not found after install

Ensure /usr/local/bin is in your PATH. Open a new terminal or run source ~/.bashrc.

ARM64 not detected

Verify with uname -m — should show aarch64. If running in emulation, the installer may download the wrong architecture.

Proxy / corporate firewall

Set https_proxy environment variable before running the install command. The installer uses curl/wget which respect proxy settings.