mirror of
https://github.com/j-hc/revanced-magisk-module.git
synced 2025-04-30 22:54:39 +02:00
module: update
This commit is contained in:
parent
36bc158941
commit
6a988a3095
@ -4,12 +4,19 @@ if type nsenter >/dev/null 2>/dev/null; then
|
|||||||
ZPID=$(pidof zygote)
|
ZPID=$(pidof zygote)
|
||||||
Z64PID=$(pidof zygote64)
|
Z64PID=$(pidof zygote64)
|
||||||
|
|
||||||
mm() {
|
mz() {
|
||||||
if [ "$ZPID" ]; then nsenter -t "$ZPID" -m -- "$@" || return $?; fi
|
if [ "$ZPID" ]; then nsenter -t "$ZPID" -m -- "$@" || return $?; fi
|
||||||
if [ "$Z64PID" ]; then nsenter -t "$Z64PID" -m -- "$@" || return $?; fi
|
if [ "$Z64PID" ]; then nsenter -t "$Z64PID" -m -- "$@" || return $?; fi
|
||||||
}
|
}
|
||||||
|
mm() { nsenter -t 1 -m -- "$@"; }
|
||||||
else
|
else
|
||||||
|
mz() { "$@"; }
|
||||||
|
|
||||||
|
if su -M -c true >/dev/null 2>/dev/null; then
|
||||||
|
mm() { su -M -c "$@"; }
|
||||||
|
else
|
||||||
mm() { "$@"; }
|
mm() { "$@"; }
|
||||||
|
fi
|
||||||
fi
|
fi
|
||||||
|
|
||||||
pmex() {
|
pmex() {
|
||||||
|
@ -20,9 +20,14 @@ RVPATH=/data/adb/rvhc/${MODPATH##*/}.apk
|
|||||||
|
|
||||||
set_perm_recursive "$MODPATH/bin" 0 0 0755 0777
|
set_perm_recursive "$MODPATH/bin" 0 0 0755 0777
|
||||||
|
|
||||||
mm grep -F "$PKG_NAME" /proc/mounts | while read -r line; do
|
mz grep -F "$PKG_NAME" /proc/mounts | while read -r line; do
|
||||||
ui_print "* Un-mount"
|
ui_print "* Un-mount"
|
||||||
mp=${line#* } mp=${mp%% *}
|
mp=${line#* } mp=${mp%% *}
|
||||||
|
mz umount -l "${mp%%\\*}"
|
||||||
|
done
|
||||||
|
mm grep -F "$PKG_NAME" /proc/mounts | while read -r line; do
|
||||||
|
ui_print "* Un-mount global"
|
||||||
|
mp=${line#* } mp=${mp%% *}
|
||||||
mm umount -l "${mp%%\\*}"
|
mm umount -l "${mp%%\\*}"
|
||||||
done
|
done
|
||||||
am force-stop "$PKG_NAME"
|
am force-stop "$PKG_NAME"
|
||||||
@ -96,7 +101,7 @@ install() {
|
|||||||
if [ "$IS_SYS" = true ]; then
|
if [ "$IS_SYS" = true ]; then
|
||||||
mkdir -p /data/adb/rvhc/empty /data/adb/post-fs-data.d
|
mkdir -p /data/adb/rvhc/empty /data/adb/post-fs-data.d
|
||||||
SCNM="/data/adb/post-fs-data.d/$PKG_NAME-uninstall.sh"
|
SCNM="/data/adb/post-fs-data.d/$PKG_NAME-uninstall.sh"
|
||||||
echo "mount -o bind /data/adb/rvhc/empty $BASEPATH" >"$SCNM"
|
echo "mount /data/adb/rvhc/empty $BASEPATH" >"$SCNM"
|
||||||
chmod +x "$SCNM"
|
chmod +x "$SCNM"
|
||||||
ui_print "* Created the uninstall script."
|
ui_print "* Created the uninstall script."
|
||||||
ui_print ""
|
ui_print ""
|
||||||
@ -138,20 +143,23 @@ if [ $INS = true ] || [ -z "$(ls -A1 "$BASEPATHLIB")" ]; then
|
|||||||
fi
|
fi
|
||||||
|
|
||||||
ui_print "* Setting Permissions"
|
ui_print "* Setting Permissions"
|
||||||
set_perm "$MODPATH/base.apk" 1000 1000 644 u:object_r:apk_data_file:s0
|
mkdir -p "/data/adb/rvhc"
|
||||||
|
mv -f "$MODPATH/base.apk" "$RVPATH"
|
||||||
|
set_perm "$RVPATH" 1000 1000 644 u:object_r:apk_data_file:s0
|
||||||
|
|
||||||
|
ui_print "* Optimizing $PKG_NAME"
|
||||||
|
mm nohup sh -c "
|
||||||
|
mount $RVPATH $BASEPATH/base.apk
|
||||||
|
cmd package compile --reset $PKG_NAME
|
||||||
|
umount -l $BASEPATH/base.apk
|
||||||
|
" >/dev/null 2>&1 &
|
||||||
|
|
||||||
ui_print "* Mounting $PKG_NAME"
|
ui_print "* Mounting $PKG_NAME"
|
||||||
mkdir -p "/data/adb/rvhc"
|
if ! op=$(mz mount "$RVPATH" "$BASEPATH/base.apk" 2>&1); then
|
||||||
RVPATH=/data/adb/rvhc/${MODPATH##*/}.apk
|
|
||||||
mv -f "$MODPATH/base.apk" "$RVPATH"
|
|
||||||
|
|
||||||
if ! op=$(mm mount -o bind "$RVPATH" "$BASEPATH/base.apk" 2>&1); then
|
|
||||||
ui_print "ERROR: Mount failed!"
|
ui_print "ERROR: Mount failed!"
|
||||||
ui_print "$op"
|
ui_print "$op"
|
||||||
fi
|
fi
|
||||||
am force-stop "$PKG_NAME"
|
am force-stop "$PKG_NAME"
|
||||||
ui_print "* Optimizing $PKG_NAME"
|
|
||||||
nohup cmd package compile --reset "$PKG_NAME" >/dev/null 2>&1 &
|
|
||||||
|
|
||||||
ui_print "* Cleanup"
|
ui_print "* Cleanup"
|
||||||
rm -rf "${MODPATH:?}/bin" "$MODPATH/$PKG_NAME.apk"
|
rm -rf "${MODPATH:?}/bin" "$MODPATH/$PKG_NAME.apk"
|
||||||
|
@ -34,15 +34,15 @@ run() {
|
|||||||
err "version mismatch (installed:${VERSION}, module:$PKG_VER)"
|
err "version mismatch (installed:${VERSION}, module:$PKG_VER)"
|
||||||
return
|
return
|
||||||
fi
|
fi
|
||||||
mm grep "$PKG_NAME" /proc/mounts | while read -r line; do
|
mz grep "$PKG_NAME" /proc/mounts | while read -r line; do
|
||||||
mp=${line#* } mp=${mp%% *}
|
mp=${line#* } mp=${mp%% *}
|
||||||
mm umount -l "${mp%%\\*}"
|
mz umount -l "${mp%%\\*}"
|
||||||
done
|
done
|
||||||
if ! chcon u:object_r:apk_data_file:s0 "$RVPATH"; then
|
if ! chcon u:object_r:apk_data_file:s0 "$RVPATH"; then
|
||||||
err "apk not found"
|
err "apk not found"
|
||||||
return
|
return
|
||||||
fi
|
fi
|
||||||
mm mount -o bind "$RVPATH" "$BASEPATH/base.apk"
|
mz mount "$RVPATH" "$BASEPATH/base.apk"
|
||||||
am force-stop "$PKG_NAME"
|
am force-stop "$PKG_NAME"
|
||||||
[ -f "$MODDIR/err" ] && mv -f "$MODDIR/err" "$MODDIR/module.prop"
|
[ -f "$MODDIR/err" ] && mv -f "$MODDIR/err" "$MODDIR/module.prop"
|
||||||
}
|
}
|
||||||
|
Loading…
x
Reference in New Issue
Block a user