Rust Toolchain

What’s Installed

NINE65 runs on Rust stable. Current version: rustc 1.93.1.

Installed components

Component What it does
cargo Build system and package manager
rustc The Rust compiler
clippy Linter — catches common mistakes
rustfmt Code formatter
rust-docs Offline documentation
rust-std Standard library

Proxy binaries (stubs, not installed)

Binary What it would be Status
cargo-miri Memory safety checker Stub — needs nightly
rls Old language server Stub — deprecated, use rust-analyzer
rust-analyzer Language server for editors Stub — install via your editor
rust-gdb GDB debugger integration Stub — install via rustup component add
rust-gdbgui GDB web frontend Stub — same
rust-lldb LLDB debugger integration Stub — same

All binaries in ~/.cargo/bin/ are symlinks to rustup. The only real binary is rustup itself (20MB). When you run any tool, rustup checks the tool name, looks up whether the component is installed, and either forwards to the real tool or shows an error.

Release Channels

Channel What it is When to use
stable Production-ready, everything works Always (your default)
beta Next stable, being tested Never needed for NINE65
nightly Bleeding edge, experimental features Only for miri

You only need stable. Nightly is optional, only if you want to run miri.

Useful Commands

# Check current toolchain
rustup show

# Update to latest stable
rustup update stable

# Check what's installed
rustup component list --installed

# Install a component
rustup component add clippy

# Run clippy (linter)
cargo clippy --workspace --exclude nine65-python --exclude nine65-wasm

# Run rustfmt (formatter)
cargo fmt --all

# Check formatting without changing files
cargo fmt --all -- --check

Additional Cargo Tools

These are installed separately via cargo install and live as real binaries in ~/.cargo/bin/:

Tool Install Purpose
cargo-nextest cargo install cargo-nextest Better test runner with timing
cargo-pretty-test cargo install cargo-pretty-test Tree-view test output
cargo-llvm-cov cargo install cargo-llvm-cov Code coverage reports

See Test Tools for usage details.

The Target Triple

When you see x86_64-unknown-linux-gnu:

x86_64   -   unknown   -   linux   -   gnu
  |            |            |          |
 CPU arch    Vendor        OS        C library

unknown means “no specific vendor” (as opposed to apple for macOS or pc for Windows). This is normal for Linux systems. It has nothing to do with missing information — it’s just the naming convention.


Back to top

NINE65 v7 — Bootstrap Complete — Acidlabz210