Skip to main content

Installation

Quick Install (curl)​

curl -fsSL https://raw.githubusercontent.com/runixio/runix/main/scripts/install.sh | bash

This downloads the latest binary for your platform to /usr/local/bin/runix.

Install via Nix​

Run directly without installing:

nix run github:runixio/runix -- --help

Install to your profile:

nix profile install github:runixio/runix

Use in a NixOS or Home Manager configuration — see Nix Integration for the full NixOS module and Home Manager module documentation.

Quick Install (Go)​

go install github.com/runixio/runix/cmd/runix@latest

Build from Source​

Prerequisites​

  • Go 1.25.7 or later
  • Make (optional, for build commands)

Steps​

git clone https://github.com/runixio/runix.git
cd runix
make build

The binary is output to bin/runix. Install it anywhere on your PATH:

cp bin/runix /usr/local/bin/

Build Details​

The Makefile builds with:

  • CGO_ENABLED=0 — fully static binary, no C dependencies
  • -trimpath — reproducible builds
  • -ldflags -X — injects version.Version and version.BuildTime at build time
# Full build command (what Makefile does)
CGO_ENABLED=0 go build -trimpath \
-ldflags "-X github.com/runixio/runix/internal/version.Version=$(git describe --tags) -X github.com/runixio/runix/internal/version.BuildTime=$(date -u +%Y-%m-%dT%H:%M:%SZ)" \
-o bin/runix ./cmd/runix

Cross-Compilation​

GoReleaser handles cross-compilation for releases. Supported platforms:

OSArchitecture
Linuxamd64, arm64
macOSamd64 (Intel), arm64 (Apple Silicon)
Windowsamd64

Download pre-built binaries from GitHub Releases.

Verify Installation​

runix version
# Runix v0.1.0

runix version --verbose
# Runix v0.1.0
# Build: 2025-01-15T10:30:00Z
# Go: go1.25.7
# OS/Arch: linux/amd64

Environment Check​

After installation, run the diagnostic tool:

runix doctor

This checks for available runtimes (Go, Python, Node.js, Bun, Deno, Ruby, PHP), verifies directory permissions, and tests the daemon socket. See Doctor for details.

Shell Completion​

Runix supports shell completions. Generate them with:

# Bash
runix completion bash > /etc/bash_completion.d/runix

# Zsh
runix completion zsh > "${fpath[1]}/_runix"

# Fish
runix completion fish > ~/.config/fish/completions/runix.fish

Data Directory​

Runix stores all runtime data in ~/.runix/:

~/.runix/
├── apps/ # Per-app log directories
│ └── myapp/
│ ├── stdout.log
│ └── stderr.log
├── state/ # Process state persistence
├── tmp/ # Temporary files
├── dump.json # Saved process state (for resurrection)
└── events.log # Persistent event store
Legacy Path

Older versions used ~/.local/share/runix/. Runix checks this path as a fallback.