diff --git a/module/build.gradle.kts b/module/build.gradle.kts index 5a5f184..5c13634 100644 --- a/module/build.gradle.kts +++ b/module/build.gradle.kts @@ -112,49 +112,35 @@ androidComponents.onVariants { variant -> } } - fun getSign(name: String, abi32: String, abi64: String) { + fun getSign(name: String, abi: String, is64Bit: Boolean) { val set = TreeSet> { o1, o2 -> o1.first.path.replace("\\", "/") .compareTo(o2.first.path.replace("\\", "/")) } + + val archSuffix = if (is64Bit) "64" else "32" + val pathSuffix = if (is64Bit) "lib64" else "lib" + set.add(Pair(root.file("module.prop").asFile, null)) set.add(Pair(root.file("sepolicy.rule").asFile, null)) set.add(Pair(root.file("post-fs-data.sh").asFile, null)) set.add(Pair(root.file("service.sh").asFile, null)) set.add( Pair( - root.file("lib/libzygisk.so").asFile, - root.file("lib/$abi32/libzygisk.so").asFile + root.file("$pathSuffix/libzygisk.so").asFile, + root.file("lib/$abi/libzygisk.so").asFile ) ) set.add( Pair( - root.file("lib64/libzygisk.so").asFile, - root.file("lib/$abi64/libzygisk.so").asFile + root.file("bin/zygisk-ptrace$archSuffix").asFile, + root.file("lib/$abi/libzygisk_ptrace.so").asFile ) ) set.add( Pair( - root.file("bin/zygisk-ptrace32").asFile, - root.file("lib/$abi32/libzygisk_ptrace.so").asFile - ) - ) - set.add( - Pair( - root.file("bin/zygisk-ptrace64").asFile, - root.file("lib/$abi64/libzygisk_ptrace.so").asFile - ) - ) - set.add( - Pair( - root.file("bin/zygiskd32").asFile, - root.file("bin/$abi32/zygiskd").asFile - ) - ) - set.add( - Pair( - root.file("bin/zygiskd64").asFile, - root.file("bin/$abi64/zygiskd").asFile + root.file("bin/zygiskd$archSuffix").asFile, + root.file("bin/$abi/zygiskd").asFile ) ) sig.initSign(privKey) @@ -164,8 +150,11 @@ androidComponents.onVariants { variant -> signFile.appendBytes(publicKey) } - getSign("machikado.arm", "armeabi-v7a", "arm64-v8a") - getSign("machikado.x86", "x86", "x86_64") + getSign("machikado.arm64", "arm64-v8a", true) + getSign("machikado.arm", "armeabi-v7a", false) + + getSign("machikado.x86_64", "x86_64", true) + getSign("machikado.x86", "x86", false) } else { println("no private_key found, this build will not be signed") root.file("machikado.arm").asFile.createNewFile() diff --git a/module/src/customize.sh b/module/src/customize.sh index f1e113f..f7f035a 100644 --- a/module/src/customize.sh +++ b/module/src/customize.sh @@ -139,6 +139,8 @@ if [ "$ARCH" = "x86" ] || [ "$ARCH" = "x64" ]; then extract "$ZIPFILE" 'lib/x86/libzygisk.so' "$MODPATH/lib" true extract "$ZIPFILE" 'lib/x86/libzygisk_ptrace.so' "$MODPATH/bin" true mv "$MODPATH/bin/libzygisk_ptrace.so" "$MODPATH/bin/zygisk-ptrace32" + + extract "$ZIPFILE" 'machikado.x86' "$MODPATH" true fi if [ "$SUPPORTS_64BIT" = true ]; then @@ -148,10 +150,9 @@ if [ "$ARCH" = "x86" ] || [ "$ARCH" = "x64" ]; then extract "$ZIPFILE" 'lib/x86_64/libzygisk.so' "$MODPATH/lib64" true extract "$ZIPFILE" 'lib/x86_64/libzygisk_ptrace.so' "$MODPATH/bin" true mv "$MODPATH/bin/libzygisk_ptrace.so" "$MODPATH/bin/zygisk-ptrace64" - fi - extract "$ZIPFILE" 'machikado.x86' "$MODPATH" true - mv "$MODPATH/machikado.x86" "$MODPATH/machikado" + extract "$ZIPFILE" 'machikado.x86_64' "$MODPATH" true + fi else if [ "$SUPPORTS_32BIT" = true ]; then ui_print "- Extracting arm libraries" @@ -160,6 +161,8 @@ else extract "$ZIPFILE" 'lib/armeabi-v7a/libzygisk.so' "$MODPATH/lib" true extract "$ZIPFILE" 'lib/armeabi-v7a/libzygisk_ptrace.so' "$MODPATH/bin" true mv "$MODPATH/bin/libzygisk_ptrace.so" "$MODPATH/bin/zygisk-ptrace32" + + extract "$ZIPFILE" 'machikado.arm' "$MODPATH" true fi if [ "$SUPPORTS_64BIT" = true ]; then @@ -169,10 +172,9 @@ else extract "$ZIPFILE" 'lib/arm64-v8a/libzygisk.so' "$MODPATH/lib64" true extract "$ZIPFILE" 'lib/arm64-v8a/libzygisk_ptrace.so' "$MODPATH/bin" true mv "$MODPATH/bin/libzygisk_ptrace.so" "$MODPATH/bin/zygisk-ptrace64" - fi - extract "$ZIPFILE" 'machikado.arm' "$MODPATH" true - mv "$MODPATH/machikado.arm" "$MODPATH/machikado" + extract "$ZIPFILE" 'machikado.arm64' "$MODPATH" true + fi fi ui_print "- Setting permissions"