|
|
|
@ -3,6 +3,55 @@
|
|
|
|
|
OUTFD=$2
|
|
|
|
|
ZIP=$3
|
|
|
|
|
|
|
|
|
|
GOOGLE_APPS="GoogleFeedback
|
|
|
|
|
GoogleLoginService
|
|
|
|
|
GoogleOneTimeInitializer
|
|
|
|
|
GoogleServicesFramework
|
|
|
|
|
GsfProxy
|
|
|
|
|
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
|
|
|
|
@ -144,15 +193,19 @@ system_mode_uninstall () {
|
|
|
|
|
fi
|
|
|
|
|
done
|
|
|
|
|
|
|
|
|
|
# com.qualcomm.location needs special treament
|
|
|
|
|
if [ -d /sdcard/com.qualcomm.location ]; then
|
|
|
|
|
ui_print " << restoring: com.qualcomm.location"
|
|
|
|
|
mv /sdcard/com.qualcomm.location /system/priv-app/ \
|
|
|
|
|
|| error " !! failed to restore com.qualcomm.lcation"
|
|
|
|
|
fi
|
|
|
|
|
for app in ${GOOGLE_APPS}; do
|
|
|
|
|
if [ -d /sdcard/nanodroid_backups/priv-app/${app} ]; then
|
|
|
|
|
ui_print " << restoring: priv-app / ${app}"
|
|
|
|
|
mv /sdcard/nanodroid_backups/priv-app/${app} \
|
|
|
|
|
/system/priv-app/ || error " !! failed to restore ${app}"
|
|
|
|
|
elif [ -d /sdcard/nanodroid_backups/app/${app} ]; then
|
|
|
|
|
ui_print " << restoring: app / ${app}"
|
|
|
|
|
mv /sdcard/nanodroid_backups/app/${app} \
|
|
|
|
|
/system/app/ || error " !! failed to restore ${app}"
|
|
|
|
|
fi
|
|
|
|
|
done
|
|
|
|
|
|
|
|
|
|
xargs rm -f < ${system_list} \
|
|
|
|
|
|| " !! failed to remove files"
|
|
|
|
|
xargs rm -f < ${system_list} || " !! failed to remove files"
|
|
|
|
|
|
|
|
|
|
# remove empty directories
|
|
|
|
|
# (find -empty not available on Android)
|
|
|
|
|