Installation Guide
This repository currently targets:
- ShadowNet Inside: Linux + Android (signed APK and Termux CLI path)
- ShadowNet Outside: any OS with stable internet (Linux/macOS/Windows)
If you are installing for the first time, start here:
Build tags
- Inside:
-tags inside - Outside:
-tags outside
Linux MVP quick path
For the full Linux-first MVP flow (bundle import, profile selection, config render, sing-box validation/launch), use:
Android install path
Development prerequisites
- Go 1.25+
This repository pins its Go toolchain in go.mod via toolchain. If your local Go supports toolchains, go will auto-download the pinned version.
Optional tools:
sing-box(runtime for real connectivity)- a local LLM runtime (e.g., llama.cpp) for the bounded advisor path
Build
bash
mkdir -p bin
go build -tags inside -ldflags="-s -w -X main.version=v0.1.0" -o bin/shadownet-inside ./cmd/inside/
go build -tags outside -ldflags="-s -w -X main.version=v0.1.0" -o bin/shadownet-outside ./cmd/outside/Run tests
- Windows:
``powershell .\scripts\run_tests.ps1 ``
- Linux/macOS:
``bash ./scripts/run_tests.sh ``
First seed bootstrapping (Inside)
Inside does not fetch from a central API. Initial seeds arrive via:
- Signal from a trusted Outside helper (
snb://v2:bundle) - QR code (in person)
- Bluetooth mesh (from nearby Inside peers during blackout)
Android notes
The release pipeline can publish a signed app-release.apk. For high-risk environments, verify checksums.txt and checksums.sig before sideloading.