Deployment
The engine is a single static-ish binary with no runtime service dependencies. It runs the same way on Linux, in containers, and on Windows.Release Binaries
Tagged releases publish standalone, statically linked binaries for Linux, macOS, and Windows (using musl on Linux and static CRT on Windows). For binary downloads, checksum verification, and desktop installer guides, see Installation and Quick Start.Container Deployment
The container image contains onlyblockscope with no external runtime
dependencies or assets. Client jars, resource packs, and job directories must be
mounted at runtime.
For container build commands, volume mounting, worker execution, and supervisor
setup, see the Docker Guide and Service Mode.
Always verify container sizing using blockscope capacity against the host
cgroup limits before deploying.
Linux via WSL
WSL2 with Docker Desktop, or a plain Ubuntu distro, is enough for a local Linux check:cores: 1, cpuQuotaMilli: 1000,
memoryLimitBytes: 1073741824, suggestedWorkers: 1,
suggestedThreads: 1, default tier 1024x1024 @ ss1.
CI
.github/workflows/ci.yml runs two jobs:
testonubuntu-latest,windows-latest, andmacos-latest: fmt, clippy with-D warnings, and the full workspace test suite.containeronubuntu-latest: builds the image, then runscapacityand a protocol smoke test inside--cpus=1 --memory=1gso cgroup parsing is exercised on every push.
.github/workflows/release.yml runs on a v* tag: it checks that the tag
matches [workspace.package] version, creates the GitHub Release from
CHANGELOG.md, and uploads the five archives with sha256 files. Running the
workflow manually builds and packages the same targets with dry-run, so the
pipeline can be verified before the first tag exists.
Capacity reference
blockscope capacity also reports suggestedMaxQuads: 80 percent of available
memory divided by roughly 400 bytes per quad. The default mesh cap is the lower
of 5,000,000 quads and that budget, so a 1 GiB container rejects oversized
schematics earlier than a 32 GiB host. --force-limits bypasses the cap;
--lod auto uses the budget to pick a factor.
These values come from the formulas in
blockscope capacity; override them with
--workers, --threads, or --memory-budget when the automatic value is wrong
for a deployment.