blob: 53f360401642b94ca273ea520ebb53e118f990c4 (plain
## Android WireGuard Module Builder
This builds [WireGuard](https://www.wireguard.com/) modules for various Android kernels.
### Adding your phone's kernel
1. Create a directory in `kernels/` if it doesn't already exist.
2. Add a corresponding `manifest.xml`, with versions based on stable non-moving tags and refs.
3. Add a `do.bash` with minimal commands for conducting the build.
4. Add a `version-hashes.txt` containing the output of `printf '%s|%s\n' "$(sha256sum < /proc/version | cut -d ' ' -f 1)" "$(cat /proc/version)"` from your phone.
Note that if a kernel directory already exists that is compatible (i.e. the module loads and works) with your phone's kernel, simply skip to step 4 and append the line.
Build all kernels:
Build just one:
$ ./build-one.bash crosshatch
These are built, signed, and uploaded to [the WireGuard download server](https://download.wireguard.com/android-module/). They can automatically be used by the [WireGuard app](https://play.google.com/store/apps/details?id=com.wireguard.android):
![Early debug alpha of WireGuard app downloading and inserting kernel module](https://data.zx2c4.com/wireguard-android-download-load-module-oct-13-2019.gif)