diff --git a/module/common.sh b/module/common_func.sh similarity index 97% rename from module/common.sh rename to module/common_func.sh index c3bd8bf..8c4fa70 100644 --- a/module/common.sh +++ b/module/common_func.sh @@ -48,3 +48,6 @@ resetprop_if_match() { [[ "$(resetprop "$NAME")" = *"$CONTAINS"* ]] && resetprop_hexpatch "$NAME" "$VALUE" } + +# stub for boot-time +ui_print() { return; } diff --git a/module/common_setup.sh b/module/common_setup.sh new file mode 100644 index 0000000..91da407 --- /dev/null +++ b/module/common_setup.sh @@ -0,0 +1,35 @@ +# Remove any definitely conflicting modules that are installed +if [ -d /data/adb/modules/safetynet-fix ]; then + touch /data/adb/modules/safetynet-fix/remove + ui_print "! Universal SafetyNet Fix (USNF) module will be removed on next reboot" +fi + +# Replace/hide conflicting custom ROM injection app folders/files to disable them +LIST=$MODPATH/example.app_replace.list +[ -f "$MODPATH/custom.app_replace.list" ] && LIST=$MODPATH/custom.app_replace.list +for APP in $(grep -v '^#' $LIST); do + if [ -e "$APP" ]; then + case $APP in + /system/*) HIDEPATH=$MODPATH/$APP;; + *) HIDEPATH=$MODPATH/system/$APP;; + esac + if [ -d "$APP" ]; then + mkdir -p $HIDEPATH + if [ "$KSU" = "true" -o "$APATCH" = "true" ]; then + setfattr -n trusted.overlay.opaque -v y $HIDEPATH + else + touch $HIDEPATH/.replace + fi + else + mkdir -p $(dirname $HIDEPATH) + if [ "$KSU" = "true" -o "$APATCH" = "true" ]; then + mknod $HIDEPATH c 0 0 + else + touch $HIDEPATH + fi + fi + if [[ -d "$APP" -o "$APP" = *".apk" ]]; then + ui_print "! $(basename $APP .apk) ROM app disabled, please uninstall any user app versions/updates after next reboot" + fi + fi +done diff --git a/module/customize.sh b/module/customize.sh index f5eaacf..74e66d7 100644 --- a/module/customize.sh +++ b/module/customize.sh @@ -11,44 +11,13 @@ for FILE in custom.app_replace.list custom.pif.json; do fi done -# Remove/warn if conflicting modules are installed -if [ -d /data/adb/modules/safetynet-fix ]; then - touch /data/adb/modules/safetynet-fix/remove - ui_print "! Universal SafetyNet Fix (USNF) module will be removed on next reboot" -fi +# Warn if potentially conflicting modules are installed if [ -d /data/adb/modules/MagiskHidePropsConf ]; then ui_print "! MagiskHidePropsConfig (MHPC) module may cause issues with PIF" fi -# Replace/hide conflicting custom ROM injection app folders/files to disable them -LIST=$MODPATH/example.app_replace.list -[ -f "$MODPATH/custom.app_replace.list" ] && LIST=$MODPATH/custom.app_replace.list -for APP in $(grep -v '^#' $LIST); do - if [ -e "$APP" ]; then - case $APP in - /system/*) HIDEPATH=$MODPATH/$APP;; - *) HIDEPATH=$MODPATH/system/$APP;; - esac - if [ -d "$APP" ]; then - mkdir -p $HIDEPATH - if [ "$KSU" = "true" -o "$APATCH" = "true" ]; then - setfattr -n trusted.overlay.opaque -v y $HIDEPATH - else - touch $HIDEPATH/.replace - fi - else - mkdir -p $(dirname $HIDEPATH) - if [ "$KSU" = "true" -o "$APATCH" = "true" ]; then - mknod $HIDEPATH c 0 0 - else - touch $HIDEPATH - fi - fi - if [[ -d "$APP" -o "$APP" = *".apk" ]]; then - ui_print "! $(basename $APP .apk) ROM app disabled, please uninstall any user app versions/updates after next reboot" - fi - fi -done +# Run common tasks for installation and boot-time +. $MODPATH/common_setup.sh # Migrate custom.pif.json to latest defaults if needed if [ -f "$MODPATH/custom.pif.json" ] && ! grep -q "api_level" $MODPATH/custom.pif.json; then diff --git a/module/post-fs-data.sh b/module/post-fs-data.sh index 8c17792..ce4f031 100644 --- a/module/post-fs-data.sh +++ b/module/post-fs-data.sh @@ -1,42 +1,13 @@ -MODDIR="${0%/*}" -. "$MODDIR/common.sh" +MODPATH="${0%/*}" +. $MODPATH/common_func.sh # Remove Play Services from Magisk Denylist when set to enforcing if magisk --denylist status; then magisk --denylist rm com.google.android.gms fi -# Remove conflicting modules if installed -if [ -d /data/adb/modules/safetynet-fix ]; then - touch /data/adb/modules/safetynet-fix/remove -fi - -# Replace/hide conflicting custom ROM injection app folders/files to disable them -LIST=$MODDIR/example.app_replace.list -[ -f "$MODDIR/custom.app_replace.list" ] && LIST=$MODDIR/custom.app_replace.list -for APP in $(grep -v '^#' $LIST); do - if [ -e "$APP" ]; then - case $APP in - /system/*) HIDEPATH=$MODDIR/$APP;; - *) HIDEPATH=$MODDIR/system/$APP;; - esac - if [ -d "$APP" ]; then - mkdir -p $HIDEPATH - if [ "$KSU" = "true" -o "$APATCH" = "true" ]; then - setfattr -n trusted.overlay.opaque -v y $HIDEPATH - else - touch $HIDEPATH/.replace - fi - else - mkdir -p $(dirname $HIDEPATH) - if [ "$KSU" = "true" -o "$APATCH" = "true" ]; then - mknod $HIDEPATH c 0 0 - else - touch $HIDEPATH - fi - fi - fi -done +# Run common tasks for installation and boot-time +. $MODPATH/common_setup.sh # Conditional early sensitive properties diff --git a/module/service.sh b/module/service.sh index d366569..8caf9a0 100644 --- a/module/service.sh +++ b/module/service.sh @@ -1,5 +1,5 @@ -MODDIR="${0%/*}" -. "$MODDIR/common.sh" +MODPATH="${0%/*}" +. $MODPATH/common_func.sh # Conditional sensitive properties