mirror of
https://github.com/wgtunnel/core.git
synced 2026-10-09 14:40:38 -07:00
1.6.3
Fix windows network migration bug. Fixes kill switch interactions with full and partial family allowedIps of active tunnels to prevent full rule cleanup and maintain tunnel rules if kill switch is disabled while a tunnel is active.
WG Tunnel Core
The shared backend used by the WG Tunnel apps: WireGuard / AmneziaWG config parsing, tunnel orchestration, tunnel recovery, DNS bootstrap, and native JNI.
Modules
| Artifact | Description |
|---|---|
com.wgtunnel:parser |
WireGuard / AmneziaWG conf parser (JVM) |
com.wgtunnel:backend |
Kotlin Multiplatform tunnel backend (pulls the Android or JVM variant) |
com.wgtunnel:backend-android |
Android variant of the backend |
com.wgtunnel:backend-jvm |
JVM / desktop variant of the backend |
com.wgtunnel:backend-android-jni |
AmneziaWG userspace + JNI |
com.wgtunnel:hevtunnel |
hev-socks5-tunnel JNI for lockdown / kill switch |
Requirements
Install these before a source build.
- JDK 21
- Git
make- Android SDK
- Android NDK
- C toolchain
- MinGW-w64
- On Linux and macOS,
flock
Go toolchain is downloaded and patched.
Build
From the repo root:
./gradlew build
Format Kotlin:
./gradlew format
Using the libraries
repositories {
mavenCentral()
}
dependencies {
implementation("com.wgtunnel:parser:<version>")
implementation("com.wgtunnel:backend:<version>")
// Android
implementation("com.wgtunnel:backend-android-jni:<version>")
implementation("com.wgtunnel:hevtunnel:<version>")
}
Replace <version> with the latest Maven Central version.
License
MIT. See LICENSE and NOTICE for third-party components (AmneziaWG, hev-socks5-tunnel, Tailscale-derived desktop firewall/router).
Languages
Go
51.4%
Kotlin
43.6%
C
3.4%
Makefile
1.1%
CMake
0.5%