Build Infrastructure

QNTX uses Nix for reproducible builds. All packages, container images, and development tools are defined in flake.nix.

Quick Start

# Install Nix (if not already installed) curl --proto '=https' --tlsv1.2 -sSf -L https://install.determinate.systems/nix | sh # Build QNTX nix build github:teranos/QNTX # Enter development shell nix develop github:teranos/QNTX

Packages

Available Nix packages that can be built from this flake:

PackageDescriptionBuild Command
qntxQNTX CLI - main command-line interfacenix build .#qntx
typegenType generator for TypeScript, Python, Rust, and Markdownnix build .#typegen
qntx-codeCode analysis plugin with Git integrationnix build .#qntx-code
qntx-pythonPython runtime plugin with PyO3nix build .#qntx-python
docs-siteStatic documentation websitenix build .#docs-site

Apps

Runnable applications for common tasks:

AppDescriptionRun Command
build-docs-siteBuild documentation and copy to web/site/nix run .#build-docs-site
generate-typesGenerate types for all languagesnix run .#generate-types
check-typesVerify generated types are up-to-datenix run .#check-types
generate-protoGenerate gRPC code from proto filesnix run .#generate-proto

Container Images

Docker/OCI container images built with Nix for reproducible deployments:

📦 CI Image

Full development environment for CI/CD pipelines

Image: ghcr.io/teranos/qntx:latest

Architectures: amd64, arm64

📦 qntx-code Plugin

Code analysis plugin container

Image: ghcr.io/teranos/qntx-code-plugin:latest

Architectures: amd64, arm64

Ports: 9000/tcp

📦 qntx-python Plugin

Python runtime plugin container

Image: ghcr.io/teranos/qntx-python-plugin:latest

Architectures: amd64, arm64

Ports: 9000/tcp

Development Shell

The development shell includes all tools needed to build and test QNTX:

nix develop

This provides: Go, Rust, Python, protobuf, SQLite, and pre-commit hooks.

Reproducibility

All builds are fully reproducible. The same inputs always produce identical outputs: