mirror of
https://github.com/j-hc/revanced-magisk-module.git
synced 2025-05-28 12:30:14 +02:00
parallelize patching
This commit is contained in:
parent
73f420a39a
commit
11a712f198
18
build.sh
18
build.sh
@ -38,13 +38,15 @@ if ((COMPRESSION_LEVEL > 9)) || ((COMPRESSION_LEVEL < 1)); then
|
||||
fi
|
||||
|
||||
log "**App Versions:**"
|
||||
build_youtube
|
||||
build_music
|
||||
build_twitter
|
||||
build_reddit
|
||||
build_tiktok
|
||||
build_spotify
|
||||
build_warn_wetter
|
||||
build_youtube &
|
||||
build_music &
|
||||
build_twitter &
|
||||
build_reddit &
|
||||
build_tiktok &
|
||||
build_spotify &
|
||||
build_warn_wetter &
|
||||
|
||||
wait
|
||||
|
||||
if [ "$BUILD_MINDETACH_MODULE" = true ]; then
|
||||
echo "Building mindetach module"
|
||||
@ -58,7 +60,7 @@ if [ "$BUILD_MINDETACH_MODULE" = true ]; then
|
||||
cd ../../
|
||||
fi
|
||||
|
||||
if [ "${YOUTUBE_MODE%/*}" = apk ] || [ "${MUSIC_ARM64_V8A_MODE%/*}" = apk ] || [ "${MUSIC_ARM_V7A_MODE%/*}" = apk ]; then
|
||||
if [[ "${YOUTUBE_MODE%/*}" =~ ^(apk|both)$ || "${MUSIC_ARM64_V8A_MODE%/*}" =~ ^(apk|both)$ || "${MUSIC_ARM_V7A_MODE%/*}" =~ ^(apk|both)$ ]]; then
|
||||
log "\nInstall [Vanced Microg](https://github.com/TeamVanced/VancedMicroG/releases) to be able to use non-root YouTube or Music"
|
||||
fi
|
||||
log "\n[revanced-magisk-module](https://github.com/j-hc/revanced-magisk-module)"
|
||||
|
50
utils.sh
50
utils.sh
@ -120,19 +120,20 @@ dl_uptodown() {
|
||||
|
||||
patch_apk() {
|
||||
local stock_input=$1 patched_apk=$2 patcher_args=$3
|
||||
echo "java -jar $RV_CLI_JAR --rip-lib x86 --rip-lib x86_64 -c -a $stock_input -o $patched_apk -b $RV_PATCHES_JAR --keystore=ks.keystore $patcher_args"
|
||||
# shellcheck disable=SC2086
|
||||
# --rip-lib is only available in my own revanced-cli builds
|
||||
java -jar "$RV_CLI_JAR" --rip-lib x86 --rip-lib x86_64 -c -a "$stock_input" -o "$patched_apk" -b "$RV_PATCHES_JAR" --keystore=ks.keystore $patcher_args
|
||||
declare -r tdir=$(mktemp -d -p $TEMP_DIR)
|
||||
local cmd="java -jar $RV_CLI_JAR --temp-dir=$tdir --rip-lib x86 --rip-lib x86_64 -c -a $stock_input -o $patched_apk -b $RV_PATCHES_JAR --keystore=ks.keystore $patcher_args"
|
||||
echo "$cmd"
|
||||
eval "$cmd"
|
||||
}
|
||||
|
||||
zip_module() {
|
||||
local patched_apk=$1 module_name=$2 stock_apk=$3 pkg_name=$4
|
||||
cp -f "$patched_apk" "${MODULE_TEMPLATE_DIR}/base.apk"
|
||||
cp -f "$stock_apk" "${MODULE_TEMPLATE_DIR}/${pkg_name}.apk"
|
||||
cd "$MODULE_TEMPLATE_DIR" || abort "Module template dir not found"
|
||||
zip -"$COMPRESSION_LEVEL" -FSr "../${BUILD_DIR}/${module_name}" .
|
||||
cd ..
|
||||
local patched_apk=$1 module_name=$2 stock_apk=$3 pkg_name=$4 template_dir=$5
|
||||
cp -f "$patched_apk" "${template_dir}/base.apk"
|
||||
cp -f "$stock_apk" "${template_dir}/${pkg_name}.apk"
|
||||
cd "$template_dir" || abort "Module template dir not found"
|
||||
zip -"$COMPRESSION_LEVEL" -FSr "../../${BUILD_DIR}/${module_name}" .
|
||||
cd ../..
|
||||
}
|
||||
|
||||
build_rv() {
|
||||
@ -141,7 +142,6 @@ build_rv() {
|
||||
local mode_arg=${args[mode]%/*} version_mode=${args[mode]#*/}
|
||||
local arch=${args[arch]:-all} app_name_l=${args[app_name],,}
|
||||
if [ "${args[apkmirror_dlurl]:-}" ] && [ "${args[regexp]:-}" ]; then dl_from=apkmirror; else dl_from=uptodown; fi
|
||||
reset_template
|
||||
|
||||
if [ "$mode_arg" = none ]; then
|
||||
return
|
||||
@ -238,10 +238,13 @@ build_rv() {
|
||||
continue
|
||||
fi
|
||||
|
||||
uninstall_sh "${args[pkg_name]}"
|
||||
service_sh "${args[pkg_name]}"
|
||||
postfsdata_sh "${args[pkg_name]}"
|
||||
customize_sh "${args[pkg_name]}" "${version}"
|
||||
declare -r base_template=$(mktemp -d -p $TEMP_DIR)
|
||||
cp -a $MODULE_TEMPLATE_DIR/. "$base_template"
|
||||
|
||||
uninstall_sh "${args[pkg_name]}" "$base_template"
|
||||
service_sh "${args[pkg_name]}" "$base_template"
|
||||
postfsdata_sh "${args[pkg_name]}" "$base_template"
|
||||
customize_sh "${args[pkg_name]}" "$base_template"
|
||||
|
||||
local upj pn
|
||||
upj=$([ "${arch}" = "all" ] && echo "${app_name_l}-update.json" || echo "${app_name_l}-${arch}-update.json")
|
||||
@ -254,10 +257,12 @@ build_rv() {
|
||||
"${args[app_name]} ReVanced" \
|
||||
"$version" \
|
||||
"${args[app_name]} ReVanced Magisk module" \
|
||||
"https://raw.githubusercontent.com/${GITHUB_REPOSITORY}/update/${upj}"
|
||||
"https://raw.githubusercontent.com/${GITHUB_REPOSITORY}/update/${upj}" \
|
||||
"$base_template"
|
||||
|
||||
local module_output="${app_name_l}-revanced-magisk-v${version}-${arch}.zip"
|
||||
zip_module "$patched_apk" "$module_output" "$stock_apk" "${args[pkg_name]}"
|
||||
zip_module "$patched_apk" "$module_output" "$stock_apk" "${args[pkg_name]}" "$base_template"
|
||||
rm -rf "$base_template"
|
||||
|
||||
echo "Built ${args[app_name]} (${arch}) (root): '${BUILD_DIR}/${module_output}'"
|
||||
done
|
||||
@ -369,21 +374,20 @@ build_warn_wetter() {
|
||||
build_rv warn_wetter_args
|
||||
}
|
||||
|
||||
postfsdata_sh() { echo "${POSTFSDATA_SH//__PKGNAME/$1}" >"${MODULE_TEMPLATE_DIR}/post-fs-data.sh"; }
|
||||
uninstall_sh() { echo "${UNINSTALL_SH//__PKGNAME/$1}" >"${MODULE_TEMPLATE_DIR}/uninstall.sh"; }
|
||||
customize_sh() { echo "${CUSTOMIZE_SH//__PKGNAME/$1}" >"${MODULE_TEMPLATE_DIR}/customize.sh"; }
|
||||
postfsdata_sh() { echo "${POSTFSDATA_SH//__PKGNAME/$1}" >"${2}/post-fs-data.sh"; }
|
||||
uninstall_sh() { echo "${UNINSTALL_SH//__PKGNAME/$1}" >"${2}/uninstall.sh"; }
|
||||
customize_sh() { echo "${CUSTOMIZE_SH//__PKGNAME/$1}" >"${2}/customize.sh"; }
|
||||
service_sh() {
|
||||
s="${SERVICE_SH//__MNTDLY/$MOUNT_DELAY}"
|
||||
echo "${s//__PKGNAME/$1}" >"${MODULE_TEMPLATE_DIR}/service.sh"
|
||||
echo "${s//__PKGNAME/$1}" >"${2}/service.sh"
|
||||
}
|
||||
|
||||
module_prop() {
|
||||
echo "id=${1}
|
||||
name=${2}
|
||||
version=v${3}
|
||||
versionCode=${NEXT_VER_CODE}
|
||||
author=j-hc
|
||||
description=${4}" >"${MODULE_TEMPLATE_DIR}/module.prop"
|
||||
description=${4}" >"${6}/module.prop"
|
||||
|
||||
[ "$ENABLE_MAGISK_UPDATE" = true ] && echo "updateJson=${5}" >>"${MODULE_TEMPLATE_DIR}/module.prop"
|
||||
[ "$ENABLE_MAGISK_UPDATE" = true ] && echo "updateJson=${5}" >>"${6}/module.prop"
|
||||
}
|
||||
|
Loading…
x
Reference in New Issue
Block a user