check version before mounting

This commit is contained in:
j-hc 2022-12-25 01:10:12 +03:00
parent bffadcb5e9
commit bfd82ebfce
4 changed files with 17 additions and 10 deletions

View File

@ -44,7 +44,7 @@ module-prop-name = "ytmusicrv-arm-magisk"
arch = "arm-v7a"
[Twitter]
build-mode = "both"
build-mode = "apk"
excluded-patches = ""
version = "latest"
apkmirror-dlurl = "https://www.apkmirror.com/apk/twitter-inc/twitter/"

View File

@ -26,7 +26,7 @@ BASEPATH=$(basepath)
if [ -n "$BASEPATH" ] && cmpr $BASEPATH $MODPATH/__PKGNAME.apk; then
ui_print "* Updating with stock APK is not needed"
else
ui_print "* Updating stock __PKGNAME"
ui_print "* Updating __PKGNAME to __PKGVER"
set_perm $MODPATH/__PKGNAME.apk 1000 1000 644 u:object_r:apk_data_file:s0
if ! op=$(pm install --user 0 -i com.android.vending -r -d $MODPATH/__PKGNAME.apk 2>&1); then
ui_print "ERROR: APK installation failed!"

View File

@ -8,7 +8,10 @@ sleep __MNTDLY
ln -f $MODDIR/base.apk $RVPATH
BASEPATH=$(pm path __PKGNAME | grep base)
BASEPATH=${BASEPATH#*:}
if [ "$BASEPATH" ] && [ -d ${BASEPATH%base.apk}lib ]; then
chcon u:object_r:apk_data_file:s0 $RVPATH
mount -o bind $RVPATH $BASEPATH
if [ $BASEPATH ]; then
VERSION=$(dumpsys package __PKGNAME | grep versionName)
if [ ${VERSION#*=} = __PKGVER ]; then
chcon u:object_r:apk_data_file:s0 $RVPATH
mount -o bind $RVPATH $BASEPATH
fi
fi

View File

@ -291,9 +291,9 @@ build_rv() {
cp -a $MODULE_TEMPLATE_DIR/. "$base_template"
uninstall_sh "$pkg_name" "$base_template"
service_sh "$pkg_name" "$base_template"
service_sh "$pkg_name" "$version" "$base_template"
postfsdata_sh "$pkg_name" "$base_template"
customize_sh "$pkg_name" "$base_template"
customize_sh "$pkg_name" "$version" "$base_template"
local upj
upj=$([ "${arch}" = "all" ] && echo "${app_name_l}-update.json" || echo "${app_name_l}-${arch}-update.json")
@ -318,10 +318,14 @@ join_args() {
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"; }
customize_sh() {
local s="${CUSTOMIZE_SH//__PKGNAME/$1}"
echo "${s//__PKGVER/$2}" >"${3}/customize.sh"
}
service_sh() {
s="${SERVICE_SH//__MNTDLY/$MOUNT_DELAY}"
echo "${s//__PKGNAME/$1}" >"${2}/service.sh"
local s="${SERVICE_SH//__MNTDLY/$MOUNT_DELAY}"
s="${s//__PKGNAME/$1}"
echo "${s//__PKGVER/$2}" >"${3}/service.sh"
}
module_prop() {
echo "id=${1}