DOCS / SOURCE BUILD

A successful build
is a starting point.

The commands here build or test the VPN source. They are separate from the commands used to build this static website.

Use the source’s declared toolchain#

The reviewed README requires Go 1.26.6 or newer in the Go 1.26 line, Git, and JDK 17 with Android SDK 36 for Android builds. Treat these as the requirements of the pinned source—not claims about your installed tools.

Run the following commands from a checkout of that repository, not from this website project.

Run the complete repository gate#

sh · run only after reading the prerequisites
go run ./cmd/gate
# Include the Android host gate
go run ./cmd/gate -android

Where: the repository root. Effect: runs module verification, compilation, vet, uncached tests and applicable audit/product gates according to the README. Success: each invoked gate completes successfully.

A focused test or a compile pass is not equivalent to this gate. This website work did not execute the VPN gate or qualify a runtime.

Create an Android internal build#

sh · run only after reading the prerequisites
cd android
./gradlew :app:assembleInternal --no-build-cache

Where: Linux or macOS development machine with the declared JDK/SDK. On Windows the documented wrapper invocation is:

powershell · run only after reading the prerequisites
cd android
.\gradlew.bat :app:assembleInternal --no-build-cache

Changes: generates an internal Android artifact in the source build environment. Internal trust fixtures are not public release material. A compiled APK must not be relabelled as a production release without the appropriate gates.

A deterministic compiler exercise#

sh · run only after reading the prerequisites
go run ./cmd/kdc generate --seed 12345 --out profile.json
go run ./cmd/kdc validate --profile profile.json

Where: the repository root with the Go toolchain. Changes: creates and validates a deterministic compiler profile. Keep generated sensitive deployment material out of source control unless it is an explicitly non-secret fixture.

Success: generation and validation succeed. This is not a sealed Android profile issuance procedure or proof of Internet egress.

When something fails#

Record the exact source revision, toolchain and categorical error. Correct the underlying build or test problem. Do not disable security assertions, package verification or profile checks to obtain a green result.

Source and scope

Reviewed . The linked source describes the implementation; released-build evidence is a separate check.

What do you need?

Search runs on this device.

Open the full search pageEsc