epoxy-server is distributed as source code inside the epoxy-tls monorepo. Building it requires only the Rust stable toolchain — no external C libraries or system dependencies beyond a standard Linux environment.Documentation Index
Fetch the complete documentation index at: https://mintlify.com/MercuryWorkshop/epoxy-tls/llms.txt
Use this file to discover all available pages before exploring further.
Prerequisites
- Rust stable toolchain — install via rustup:
rustup toolchain install stable - Cargo — included with every Rust toolchain installation
- Git — to clone the repository (the build script reads the git SHA at compile time using
vergen-git2)
Building
Clone the repository and run the release build from the repository root (or from inside theserver/ subdirectory):
CPU-specific optimization
Cargo’s release profile already enables link-time optimisation and single-codegen-unit compilation (see the note below). You can squeeze out additional throughput by telling the compiler to target the exact instruction set of the machine that will run the server:Optional feature flags
The default build includes TOML config support. Additional features can be enabled with--features:
| Feature flag | What it adds | Enabled by default |
|---|---|---|
toml | TOML config file format (serde + toml crate) | ✅ |
yaml | YAML config file format (serde_yaml crate) | ❌ |
speed-limit | Per-connection read/write rate limiting via async-speed-limit | ❌ |
twisp | TWisp terminal-stream extension (pty-process, libc, shell-words) | ❌ |
tokio-console | Tokio Console runtime diagnostics | ❌ |
The workspace
[profile.release] sets lto = true, codegen-units = 1, opt-level = 3, and panic = "abort". These settings are already in place in the repository and apply automatically to every cargo build -r invocation — no extra flags are needed to get a fully optimised binary. Debug info (debug = true) is also retained so that crash traces are readable, but the binary is not stripped, so you may wish to run strip target/release/epoxy-server before shipping to save disk space.