#!/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" 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