mirror of
https://gitlab.com/Nanolx/NanoDroid
synced 2024-11-07 15:20:36 +00:00
136 lines
3.0 KiB
Bash
136 lines
3.0 KiB
Bash
#!/sbin/sh
|
|
##########################################################################################
|
|
#
|
|
# NanoDroid System Mode OTA survival Script
|
|
# by Nanolx
|
|
#
|
|
# Inspired by 99-flashafterupdate.sh of osm0sis @ xda-developers
|
|
# Forked from 99-magisk.sh of topjohnwu @ xda-developers
|
|
#
|
|
##########################################################################################
|
|
|
|
. /tmp/backuptool.functions
|
|
|
|
MODID=@MODID@
|
|
OUTFD=$(ps | grep -v grep | grep -oE "update(.*)" | cut -d" " -f3)
|
|
|
|
GOOGLE_APPS="GoogleFeedback
|
|
GoogleLoginService
|
|
GoogleOneTimeInitializer
|
|
GoogleServicesFramework
|
|
MarketUpdater
|
|
PlayGames
|
|
Velvet
|
|
GmsDroidGuard
|
|
YouTube
|
|
GmsCore_update
|
|
GmsCoreSetupPrebuilt
|
|
PrebuiltGmsCore
|
|
WhisperPush
|
|
BlankStore
|
|
FDroidPriv
|
|
PlayStore
|
|
Vending
|
|
AMAPNetworkLocation
|
|
BaiduNetworkLocation
|
|
LegacyNetworkLocation
|
|
NetworkLocation
|
|
UnifiedNlp
|
|
DejaVuBackend
|
|
DejaVuNlpBackend
|
|
IchnaeaNlpBackend
|
|
MozillaNlpBackend
|
|
NominatimGeocoderBackend
|
|
NominatimNlpBackend
|
|
com.mgoogle.android.gms
|
|
com.google.android.gms
|
|
com.google.android.feedback
|
|
com.google.android.gsf.login
|
|
com.google.android.gsf
|
|
com.android.vending
|
|
org.microg.gms.droidguard
|
|
org.schabi.newpipe
|
|
com.google.android.youtube
|
|
com.qualcomm.location
|
|
com.amap.android.location
|
|
com.baidu.location
|
|
com.google.android.location
|
|
org.microg.nlp
|
|
org.microg.unifiednlp
|
|
com.google.android.maps
|
|
org.fitchfamily.android.dejavu
|
|
org.microg.nlp.backend.ichnaea
|
|
org.microg.nlp.backend.nominatim"
|
|
|
|
ui_print () {
|
|
echo -n -e "ui_print ${1}\n" >> /proc/self/fd/${OUTFD}
|
|
echo -n -e "ui_print\n" >> /proc/self/fd/${OUTFD}
|
|
}
|
|
|
|
backup_nlpconflicts () {
|
|
for app in ${GOOGLE_APPS}; do
|
|
if [ -f /system/bin/nanodroid-overlay ]; then
|
|
/system/bin/nanodroid-overlay --add ${app}
|
|
else /system/xbin/nanodroid-overlay --add ${app}
|
|
fi
|
|
done
|
|
}
|
|
|
|
case "${1}" in
|
|
backup)
|
|
if [ -r /data/adb/.nanodroid-list ]; then
|
|
ui_print "${MODID} addon.d: backup"
|
|
cat /data/adb/.nanodroid-list | while read FILE; do
|
|
echo " + backup: ${FILE}"
|
|
backup_file "${FILE}"
|
|
done
|
|
|
|
if test -h /system/fonts/Roboto-Regular.ttf; then
|
|
CUSTOM_FONT="$(basename $(readlink /system/fonts/Roboto-Regular.ttf) .ttf)"
|
|
ui_print " ${MODID} addon.d: detected NanoDroid-Font (${CUSTOM_FONT})"
|
|
|
|
echo CUSTOM_FONT=${CUSTOM_FONT} > /tmp/nanodroid_font
|
|
fi
|
|
|
|
ui_print "${MODID} addon.d: backup done"
|
|
fi
|
|
;;
|
|
restore)
|
|
if [ -r /data/adb/.nanodroid-list ]; then
|
|
ui_print "${MODID} addon.d: restore"
|
|
cat /data/adb/.nanodroid-list | while read FILE; do
|
|
echo " + restore: ${FILE}"
|
|
restore_file "${FILE}"
|
|
done
|
|
ui_print "${MODID} addon.d: restore done"
|
|
fi
|
|
;;
|
|
pre-backup)
|
|
# Stub
|
|
;;
|
|
post-backup)
|
|
# Stub
|
|
;;
|
|
pre-restore)
|
|
# Stub
|
|
;;
|
|
post-restore)
|
|
if [ -f /tmp/nanodroid_font ]; then
|
|
. /tmp/nanodroid_font
|
|
|
|
ui_print " ${MODID} addon.d: restoring NanoDroid-Font (${CUSTOM_FONT})"
|
|
|
|
if [ -f /system/xbin/nanodroid-font ]; then
|
|
/system/xbin/nanodroid-font -s "${CUSTOM_FONT}"
|
|
elif [ -f /system/bin/nanodroid-font ]; then
|
|
/system/bin/nanodroid-font -s "${CUSTOM_FONT}"
|
|
fi
|
|
|
|
rm /tmp/nanodroid_font
|
|
fi
|
|
|
|
backup_nlpconflicts
|
|
;;
|
|
esac
|
|
|