Is husi not in your language, or the translation is incorrect or incomplete? Get involved in the translations on our Weblate.
git clone https://github.com/xchacha20-poly1305/husi.git --depth=1
cd husi/
./run lib source # Will help you to get submodulesEnvironment:
-
Go (1.22+) But should apply patch
Go1.22.5: Apply this patch to
${GOROOT}/src/runtime/cgocall.goGo1.23rc2: Apply this patch (You should decode base64 first) to
${GOROOT} -
Openjdk-17 (Other version is ok. But require version 17 to build the same file as action.)
Run:
make libcoreThis will generate app/libs/libcore.aar.
If gomobile is not in the GOPATH, it will be automatically downloaded and compiled.
If you don't want to build it, you can download then in actions
Environment:
- jdk-17-openjdk
- ndk 27.0.12077973
If the environment variables $ANDROID_HOME and $ANDROID_NDK_HOME are not set, you can run the script buildScript/init/env_ndk.sh:
echo "sdk.dir=${ANDROID_HOME}" > local.propertiesSigning preparation (optional, it is recommended to sign after compilation): Replace release.keystore with your own keystore.
echo "KEYSTORE_PASS=" >> local.properties
echo "ALIAS_NAME=" >> local.properties
echo "ALIAS_PASS=" >> local.propertiesDownload geo resource files:
make assetsCompile the release version:
make apkThe APK file will be located in app/build/outputs/apk.
make plugin PLUGIN=<Plugin name>Plugin name list:
hysteria2juicitynaivemieru
Core:
Android GUI: