-
Notifications
You must be signed in to change notification settings - Fork 0
Building from Source
This guide covers everything required to compile, build, and run Tuim from source.
To build Tuim, ensure the following tools are installed:
| Tool | Version Requirement | Purpose |
|---|---|---|
| Zig | 0.16.0 exactly | Compiles the Zig frontend, reactor, and TUI renderer. |
| Neovim | 0.12.0 or newer | Editing and terminal engine. |
| Git | Any modern version | Source control and plugin cloning. |
| Python 3 | Python 3.8+ | Marketplace search and test suite runner. |
| C Compiler & Make |
gcc / clang & make
|
Compiling Tree-sitter parsers and grammars. |
| Tree-sitter CLI | 0.26.1+ | Grammar generator (setup will auto-install if missing). |
Important
Zig is actively evolving. Tuim is pinned specifically to Zig 0.16.0. Older (e.g. 0.13, 0.14) or newer nightly builds may fail due to standard library API changes.
Clone the repository and build using Zig's standard build system:
# Clone the repository
git clone https://github.com/Rouboufy/tuim.git
cd tuim
# Compile with optimization
zig build -Doptimize=ReleaseFastThe compiled binary will be placed at:
./zig-out/bin/tuim
build.zig provides several customizable flags:
# Fast release (optimized for execution speed, stripped assertions)
zig build -Doptimize=ReleaseFast
# Safe release (optimized with runtime bounds checks enabled)
zig build -Doptimize=ReleaseSafe
# Debug build (unoptimized, full debug symbols, fastest compilation)
zig build -Doptimize=Debug
# Specify custom version string
zig build -Dversion=0.4.0-dev
# Specify custom bug reporting endpoint
zig build -Dbug-report-endpoint=https://my-reporting-worker.dev/bug-reportRun your newly built binary directly:
./zig-out/bin/tuimYou can also use Zig's built-in run step:
zig build runTo run with pass-through arguments (e.g. opening a specific file or directory):
zig build run -- src/main.zigIf you want an automated source build that downloads and configures private, isolated toolchains (Zig 0.16.0 and Neovim 0.12+) without altering your system packages:
bash setup.sh --source --yesThis installs private toolchains under ~/.local/share/tuim/tools/ and links the launcher at ~/.local/bin/tuim.
Learn how to run test suites and verify your changes in Testing & Verification.
Tuim Repository ยท Releases ยท Issue Tracker ยท Website ยท Licensed under MIT
- Workspace Overview
- Editing Modes
- Keybindings & Shortcuts
- File & Buffer Management
- Integrated Terminal
- Git Integration
- Extensions & Plugins
- Language Tools & LSP
- AI Coding Assistants