Requirements

  • Zig 0.17. The tree is pinned and CI-tested against it.

With devenv, .envrc activates the same shell automatically on cd; otherwise enter it by hand:

devenv shell        # zig 0.17, zls, kcov

Build

git clone https://github.com/chy3xyz/zgix
cd zgix
zig build -Doptimize=ReleaseSafe

The binary lands at zig-out/bin/zgix. Plain zig build produces a Debug binary — fine for developing zgix, but quote numbers only from a -Doptimize=ReleaseFast or ReleaseSafe build.

Useful build targets:

zig build                 # zig-out/bin/zgix (Debug)
zig build ci              # the per-change gate: tests + lint + simulation + smoke
zig build test            # unit tests
zig build sim -- 0 500    # deterministic simulator: [seed] [iterations]
zig build smoke           # live gate: the real binary against a real origin
zig build schema          # emit zig-out/config.schema.json

Check it runs

zgix --version      # print the version (-V)
zgix --help         # usage summary (-h)

A release build prints its bare version, e.g. zgix 0.9.0; a build from source after a release adds what distinguishes it, zgix 0.9.0 (v0.9.0-5-gabc1234), and -dirty when the tree had uncommitted changes — so the version in a bug report identifies the exact build.

Prebuilt binaries

There is no release channel yet: build from source. A one-line installer (curl -fsSL https://zgix.click/install.sh | sh) ships with the first release.

Last updated:

Built with zdoc