Is husi not in your language, or the translation is incorrect or incomplete? Get involved in the translations on our Weblate.
In Linux, you can build husi reproducibly for release version.
For this, you should use the same version of JDK, NDK as below. And Go version should as same as version.sh.
git clone https://github.com/xchacha20-poly1305/husi.git --depth=1
cd husi/
./run lib source # Will help you to get submodulesEnvironment:
-
These versions need to apply patch.
Unfold
1.22.5: Apply this patch to
${GOROOT}/src/runtime/cgocall.go1.23.0-1.23.3: Apply this patch to
${GOROOT}.make patch_go12301.23.4: Apply this patch to
$(GOROOT).make patch_go1234 -
Openjdk-21 (Later may OK, too.)
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-21
- ndk 27.2.12479018
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: