Installing Gossamer¶
Pre-release — the only supported install path today is a source build.
From source¶
git clone https://github.com/danpozmanter/gossamer
cd gossamer
cargo build --workspace --release
./target/release/gos --version
The gos binary is self-contained. Copy it anywhere on your
PATH:
install -m 0755 target/release/gos /usr/local/bin/gos
Dependencies¶
- Rust toolchain — stable, edition 2024, MSRV 1.85. The
workspace's
rust-toolchain.tomlpins a minimum. - A C linker — required by Cargo, not by Gossamer.
cc/gcc/clangwill do.
Verifying¶
gos --version
gos new example.com/hello --path /tmp/hello
cd /tmp/hello
gos run src/main.gos
You should see hello from hello.
Target toolchains¶
gos build --target <triple> enables cross-compilation. The
default registered set includes:
x86_64-unknown-linux-gnuaarch64-unknown-linux-gnux86_64-apple-darwinaarch64-apple-darwinx86_64-pc-windows-msvcriscv64gc-unknown-linux-gnuwasm32-unknown-unknownwasm32-wasi
Musl targets (*-unknown-linux-musl) are gated behind the
musl Cargo feature. Rebuild with:
cargo build --workspace --release -p gossamer-driver --features musl
Editor support¶
Pre-built plug-ins for VSCode, Vim, Neovim, Helix, Emacs, Sublime,
and Zed (plus a tree-sitter grammar) live at
danpozmanter/gossamer-editor-support.
Each one drives gos lsp for diagnostics, hover, completion,
go-to-definition, references, rename, and inlay hints.