MB server-side now enforcing checksum checks, omehow it also make app doesn't work with GW934 error when logging in after compiled with apktool Signed-off-by: Cuynu <cuynu@proton.me>
74 lines
1.7 KiB
Shell
74 lines
1.7 KiB
Shell
#!/usr/bin/env bash
|
|
# shellcheck disable=SC2295
|
|
# vim: expandtab tabstop=4 shiftwidth=4
|
|
|
|
[ -n "$DIRPATH" ] || {
|
|
echo 'ERROR : $DIRPATH not set, script ran standalone?'
|
|
exit 1
|
|
}
|
|
|
|
. "$DIRPATH/common.sh"
|
|
|
|
echo '#!/usr/bin/env bash
|
|
|
|
[ -n "$DIRPATH" ] || {
|
|
err "DIRPATH not set, script ran standalone?"
|
|
exit 1
|
|
}
|
|
|
|
[ -d "$DIRPATH"/mbapk/mbapk_unpacked ] || {
|
|
err "[mbapk_unpacked] folder not found, please unpack APK first !"
|
|
exit 127
|
|
}
|
|
|
|
. "$DIRPATH/common.sh"
|
|
|
|
applyPatch() {
|
|
good "Applying patch [$opt]"
|
|
if bash "$2" ; then
|
|
good "Patch [$opt] applied successfully"
|
|
echo "Patch applied by MBCPApp Patcher on $(uname -s -r) with commit : $(git rev-parse --short HEAD) at $(date)." > "mbapk/mbapk_unpacked/root/assets/mbcp_info/$1.inf"
|
|
else
|
|
err "Patch [$opt] failed"
|
|
fi
|
|
}
|
|
|
|
echo "--------------------------
|
|
Patch list for MBCPApp :"
|
|
PS3="Select patch options : "' > patch.sh
|
|
|
|
for f in patches/*.sh ; do
|
|
# name without suffix and prefix
|
|
n="$(rstrip "$f" '.sh')"
|
|
n="$(lstrip "$n" 'patches/')"
|
|
|
|
# patch infos
|
|
pname="$(getvar "2" "# PATCHNAME: " "$f")"
|
|
maxver="$(getvar "3" "# MAXVER: " "$f")"
|
|
minver="$(getvar "4" "# MINVER: " "$f")"
|
|
|
|
pname=${pname//[^a-zA-Z0-9_& ]/}
|
|
minver="${minver//[^0-9.]/}"
|
|
maxver="${maxver//[^0-9.]/}"
|
|
|
|
#echo "$f|$pname|$minver|$maxver"
|
|
|
|
[ -n "$pname" ] || {
|
|
warn "[parser] $f missing PATCHNAME, not adding"
|
|
continue
|
|
}
|
|
|
|
opts_arr+=" '$pname'"
|
|
append+=" '$pname') applyPatch $n $f ;;
|
|
"
|
|
done
|
|
|
|
opts_arr+=" 'Exit'"
|
|
#echo "$opts_arr"
|
|
echo "select opt in $opts_arr" >> patch.sh
|
|
echo 'do
|
|
case "$opt" in' >> patch.sh
|
|
echo "$append
|
|
'Exit' ) exit ;;
|
|
esac
|
|
done" >> patch.sh
|