- Rename package and all Java/Kotlin sources: com.wireguard.android -> page.onram.wirevpn - applicationId -> page.onram.wirevpn, version 1.0.20260910 (520) - New launcher icon: dark circle, white padlock with bold W - App name 'Wire VPN' in all locales; remove donate preference - Release signing from KEYSTORE_* env vars (CI) - F-Droid v2: scripts/fdroid_metadata.py - GitHub/Gitea Actions workflow: auto-build signed APK + F-Droid metadata/signature on every new release, attach to the release - README + NOTICE (license inventory)
This commit is contained in:
@@ -1,40 +1,50 @@
|
||||
# Android GUI for [WireGuard](https://www.wireguard.com/)
|
||||
# Wire VPN for Android
|
||||
|
||||
**[Download from the Play Store](https://play.google.com/store/apps/details?id=com.wireguard.android)**
|
||||
**A fork of [WireGuard for Android](https://git.zx2c4.com/wireguard-android/about/), rebranded as Wire VPN.**
|
||||
|
||||
This is an Android GUI for [WireGuard](https://www.wireguard.com/). It [opportunistically uses the kernel implementation](https://git.zx2c4.com/android_kernel_wireguard/about/), and falls back to using the non-root [userspace implementation](https://git.zx2c4.com/wireguard-go/about/).
|
||||
Package: `page.onram.wirevpn` · Available from our [F-Droid repository](https://git.obahan.xyz/frank/wirevpn) on release.
|
||||
|
||||
Wire VPN is an Android GUI for [WireGuard](https://www.wireguard.com/). It [opportunistically uses the kernel implementation](https://git.zx2c4.com/android_kernel_wireguard/about/), and falls back to using the non-root [userspace implementation](https://git.zx2c4.com/wireguard-go/about/).
|
||||
|
||||
## What changed from upstream
|
||||
|
||||
- App name rebranded from *WireGuard* to *Wire VPN*
|
||||
- New launcher icon (padlock with a bold W in a circle)
|
||||
- Application ID changed to `page.onram.wirevpn` (Java/Kotlin package is `page.onram.wirevpn`)
|
||||
- GitHub Actions pipeline: every new Git release automatically builds a signed release APK and produces F-Droid v2 repository artifacts
|
||||
- Upstream in-app auto-updater and donation links removed (we distribute via our own F-Droid repo)
|
||||
|
||||
## Building
|
||||
|
||||
```
|
||||
$ git clone --recurse-submodules https://git.zx2c4.com/wireguard-android
|
||||
$ cd wireguard-android
|
||||
$ git clone --recurse-submodules https://git.obahan.xyz/frank/wirevpn.git
|
||||
$ cd wirevpn
|
||||
$ ./gradlew assembleRelease
|
||||
```
|
||||
|
||||
macOS users may need [flock(1)](https://github.com/discoteq/flock).
|
||||
The build compiles the tunnel backend natively (CMake + NDK) and the userspace
|
||||
WireGuard implementation in Go (Go 1.24.3 is fetched and hash-checked by the
|
||||
build automatically).
|
||||
|
||||
## Embedding
|
||||
|
||||
The tunnel library is [on Maven Central](https://search.maven.org/artifact/com.wireguard.android/tunnel), alongside [extensive class library documentation](https://javadoc.io/doc/com.wireguard.android/tunnel).
|
||||
To sign with a keystore, export:
|
||||
|
||||
```
|
||||
implementation 'com.wireguard.android:tunnel:$wireguardTunnelVersion'
|
||||
export KEYSTORE_FILE=/path/to/keystore.jks
|
||||
export KEYSTORE_PASSWORD=...
|
||||
export KEY_ALIAS=...
|
||||
export KEY_PASSWORD=...
|
||||
```
|
||||
|
||||
The library makes use of Java 8 features, so be sure to support those in your gradle configuration with [desugaring](https://developer.android.com/studio/write/java8-support#library-desugaring):
|
||||
|
||||
```
|
||||
compileOptions {
|
||||
sourceCompatibility JavaVersion.VERSION_17
|
||||
targetCompatibility JavaVersion.VERSION_17
|
||||
coreLibraryDesugaringEnabled = true
|
||||
}
|
||||
dependencies {
|
||||
coreLibraryDesugaring "com.android.tools:desugar_jdk_libs:2.0.3"
|
||||
}
|
||||
```
|
||||
Releases are cut by creating a Git tag/release on `main` (e.g. `v1.0.x`); the
|
||||
`release.yml` GitHub Action builds and publishes the artifacts.
|
||||
|
||||
## Translating
|
||||
|
||||
Please help us translate the app into several languages on [our translation platform](https://crowdin.com/project/WireGuard).
|
||||
This project uses [Crowdin](https://crowdin.com) upstream; translations in
|
||||
`ui/src/main/res/values-*/` are carried over from the WireGuard project.
|
||||
|
||||
## Licences
|
||||
|
||||
See [NOTICE.md](NOTICE.md) for the full list. The app code is
|
||||
[Apache-2.0](COPYING). This project is a fork of the WireGuard Android app and
|
||||
is not affiliated with WireGuard LLC.
|
||||
|
||||
Reference in New Issue
Block a user