blob: 1188b330f47fa18d11c80b6fc1a52eca97de32d0 [file] [log] [blame]
darkobas7e205cb2018-07-26 10:00:47 +02001#!/system/bin/sh
2#
3# ADDOND_VERSION=2
4#
5# /system/addon.d/69-gapps.sh
6#
7. /postinstall/tmp/backuptool.functions
8
9list_files() {
10cat <<EOF
11app/FaceLock/FaceLock.apk
12app/GoogleCalendarSyncAdapter/GoogleCalendarSyncAdapter.apk
13app/GoogleContactsSyncAdapter/GoogleContactsSyncAdapter.apk
14app/GoogleExtShared/GoogleExtShared.apk
15app/GoogleTTS/GoogleTTS.apk
16etc/default-permissions/default-permissions.xml
17etc/default-permissions/opengapps-permissions.xml
18etc/g.prop
19etc/permissions/com.google.android.dialer.support.xml
20etc/permissions/com.google.android.maps.xml
21etc/permissions/com.google.android.media.effects.xml
22etc/permissions/com.google.widevine.software.drm.xml
23etc/permissions/privapp-permissions-google.xml
24etc/preferred-apps/google.xml
25etc/sysconfig/dialer_experience.xml
26etc/sysconfig/framework-sysconfig.xml
27etc/sysconfig/google.xml
28etc/sysconfig/google_build.xml
29etc/sysconfig/whitelist_com.android.omadm.service.xml
30framework/com.google.android.dialer.support.jar
31framework/com.google.android.maps.jar
32framework/com.google.android.media.effects.jar
33framework/com.google.widevine.software.drm.jar
34lib/libfilterpack_facedetect.so
35lib/libfrsdk.so
36lib64/libfacenet.so
37lib64/libfilterpack_facedetect.so
38lib64/libfrsdk.so
39lib64/libjni_latinimegoogle.so
40priv-app/ConfigUpdater/ConfigUpdater.apk
41priv-app/GmsCoreSetupPrebuilt/GmsCoreSetupPrebuilt.apk
42priv-app/GoogleBackupTransport/GoogleBackupTransport.apk
43priv-app/GoogleExtServices/GoogleExtServices.apk
44priv-app/GoogleFeedback/GoogleFeedback.apk
45priv-app/GoogleOneTimeInitializer/GoogleOneTimeInitializer.apk
46priv-app/GooglePartnerSetup/GooglePartnerSetup.apk
47priv-app/GoogleServicesFramework/GoogleServicesFramework.apk
48priv-app/Phonesky/Phonesky.apk
49priv-app/PrebuiltGmsCore/PrebuiltGmsCore.apk
50priv-app/SetupWizard/SetupWizard.apk
51priv-app/Turbo/Turbo.apk
52priv-app/Velvet/Velvet.apk
53usr/srec/en-US/APP_NAME.fst
54usr/srec/en-US/APP_NAME.syms
55usr/srec/en-US/CLG.prewalk.fst
56usr/srec/en-US/CONTACT_NAME.fst
57usr/srec/en-US/CONTACT_NAME.syms
58usr/srec/en-US/SONG_NAME.fst
59usr/srec/en-US/SONG_NAME.syms
60usr/srec/en-US/am_phonemes.syms
61usr/srec/en-US/app_bias.fst
62usr/srec/en-US/c_fst
63usr/srec/en-US/commands.abnf
64usr/srec/en-US/compile_grammar.config
65usr/srec/en-US/config.pumpkin
66usr/srec/en-US/confirmation_bias.fst
67usr/srec/en-US/contacts.abnf
68usr/srec/en-US/contacts_bias.fst
69usr/srec/en-US/contacts_disambig.fst
70usr/srec/en-US/dict
71usr/srec/en-US/dictation.config
72usr/srec/en-US/dnn
73usr/srec/en-US/embedded_class_denorm.mfar
74usr/srec/en-US/embedded_normalizer.mfar
75usr/srec/en-US/endpointer_dictation.config
76usr/srec/en-US/endpointer_model
77usr/srec/en-US/endpointer_model.mmap
78usr/srec/en-US/endpointer_voicesearch.config
79usr/srec/en-US/ep_portable_mean_stddev
80usr/srec/en-US/ep_portable_model.uint8.mmap
81usr/srec/en-US/g2p.data
82usr/srec/en-US/g2p_fst
83usr/srec/en-US/g2p_graphemes.syms
84usr/srec/en-US/g2p_phonemes.syms
85usr/srec/en-US/grammar.config
86usr/srec/en-US/hmm_symbols
87usr/srec/en-US/hmmlist
88usr/srec/en-US/input_mean_std_dev
89usr/srec/en-US/lexicon.U.fst
90usr/srec/en-US/lstm_model.uint8.data
91usr/srec/en-US/magic_mic.config
92usr/srec/en-US/media_bias.fst
93usr/srec/en-US/metadata
94usr/srec/en-US/monastery_config.pumpkin
95usr/srec/en-US/norm_fst
96usr/srec/en-US/offensive_word_normalizer.mfar
97usr/srec/en-US/offline_action_data.pb
98usr/srec/en-US/phonelist
99usr/srec/en-US/portable_lstm
100usr/srec/en-US/portable_meanstddev
101usr/srec/en-US/pumpkin.mmap
102usr/srec/en-US/read_items_bias.fst
103usr/srec/en-US/rescoring.fst.compact
104usr/srec/en-US/semantics.pumpkin
105usr/srec/en-US/skip_items_bias.fst
106usr/srec/en-US/time_bias.fst
107usr/srec/en-US/transform.mfar
108usr/srec/en-US/voice_actions.config
109usr/srec/en-US/voice_actions_compiler.config
110usr/srec/en-US/word_confidence_classifier
111usr/srec/en-US/wordlist.syms
112addon.d/69-gapps.sh
113addon.d/addond_tail
114addon.d/addond_head
115EOF
116}
117
118case "$1" in
119 backup)
120 list_files | while read FILE DUMMY; do
121 backup_file $S/$FILE
122 done
123 ;;
124 restore)
125 list_files | while read FILE REPLACEMENT; do
126 R=""
127 [ -n "$REPLACEMENT" ] && R="$S/$REPLACEMENT"
128 [ -f "$C/$S/$FILE" ] && restore_file $S/$FILE $R
129 done
130 ;;
131 pre-backup)
132 # Stub
133 ;;
134 post-backup)
135 # Stub
136 ;;
137 pre-restore)
138 # Remove Stock/AOSP apps (from GApps Installer)
139 rm -rf /postinstall/system/priv-app/ExtServices
140 rm -rf /postinstall/system/app/ExtShared
141 rm -rf /postinstall/system/app/Provision
142 rm -rf /postinstall/system/priv-app/Provision
143
144 # Remov/postinstalle 'other' apps (per installer.data)
145 rm -rf /postinstall/system/app/BookmarkProvider
146 rm -rf /postinstall/system/app/BooksStub
147 rm -rf /postinstall/system/app/CalendarGoogle
148 rm -rf /postinstall/system/app/CloudPrint
149 rm -rf /postinstall/system/app/DeskClockGoogle
150 rm -rf /postinstall/system/app/EditorsDocsStub
151 rm -rf /postinstall/system/app/EditorsSheetsStub
152 rm -rf /postinstall/system/app/EditorsSlidesStub
153 rm -rf /postinstall/system/app/Gmail
154 rm -rf /postinstall/system/app/Gmail2
155 rm -rf /postinstall/system/app/GoogleCalendar
156 rm -rf /postinstall/system/app/GoogleCloudPrint
157 rm -rf /postinstall/system/app/GoogleHangouts
158 rm -rf /postinstall/system/app/GoogleKeep
159 rm -rf /postinstall/system/app/GoogleLatinIme
160 rm -rf /postinstall/system/app/GooglePlus
161 rm -rf /postinstall/system/app/Keep
162 rm -rf /postinstall/system/app/NewsWeather
163 rm -rf /postinstall/system/app/NewsstandStub
164 rm -rf /postinstall/system/app/PartnerBookmarksProvider
165 rm -rf /postinstall/system/app/PrebuiltBugleStub
166 rm -rf /postinstall/system/app/PrebuiltKeepStub
167 rm -rf /postinstall/system/app/QuickSearchBox
168 rm -rf /postinstall/system/app/Vending
169 rm -rf /postinstall/system/priv-app/GmsCore
170 rm -rf /postinstall/system/priv-app/GmsCore_update
171 rm -rf /postinstall/system/priv-app/GoogleHangouts
172 rm -rf /postinstall/system/priv-app/GoogleNow
173 rm -rf /postinstall/system/priv-app/GoogleSearch
174 rm -rf /postinstall/system/priv-app/OneTimeInitializer
175 rm -rf /postinstall/system/priv-app/QuickSearchBox
176 rm -rf /postinstall/system/priv-app/Velvet_update
177 rm -rf /postinstall/system/priv-app/Vending
178
179 # Remov/postinstalle 'priv-app' apps from 'app' (per installer.data)
180 rm -rf /postinstall/system/app/CanvasPackageInstaller
181 rm -rf /postinstall/system/app/ConfigUpdater
182 rm -rf /postinstall/system/app/GoogleBackupTransport
183 rm -rf /postinstall/system/app/GoogleFeedback
184 rm -rf /postinstall/system/app/GoogleLoginService
185 rm -rf /postinstall/system/app/GoogleOneTimeInitializer
186 rm -rf /postinstall/system/app/GooglePartnerSetup
187 rm -rf /postinstall/system/app/GoogleServicesFramework
188 rm -rf /postinstall/system/app/OneTimeInitializer
189 rm -rf /postinstall/system/app/Phonesky
190 rm -rf /postinstall/system/app/PrebuiltGmsCore
191 rm -rf /postinstall/system/app/SetupWizard
192 rm -rf /postinstall/system/app/Velvet
193
194 # Remov/postinstalle 'required' apps (per installer.data)
195 rm -rf /postinstall/system/app/LatinIME/lib//libjni_keyboarddecoder.so
196 rm -rf /postinstall/system/app/LatinIME/lib//libjni_latinimegoogle.so
197 rm -rf /postinstall/system/lib/libjni_keyboarddecoder.so
198 rm -rf /postinstall/system/lib/libjni_latinimegoogle.so
199 rm -rf /postinstall/system/lib64/libjni_keyboarddecoder.so
200 rm -rf /postinstall/system/lib64/libjni_latinimegoogle.so
201
202 # Remove 'user requested' apps (from gapps-config)
203
204 # Stub
205 ;;
206 post-restore)
207 if [ -d "/postinstall" ]; then
208 P="/postinstall/system"
209 else
210 P="/system"
211 fi
212
213 for i in $(list_files); do
214 chown root:root "$P/$i"
215 chmod 644 "$P/$i"
216 chmod 755 "$(dirname "$P/$i")"
217 done
218
219 # Recreate required symlinks (from GApps Installer)
220 install -d "/postinstall/system/app/FaceLock/lib/arm64"
221 ln -sfn "/postinstall/system/lib64/libfacenet.so" "/postinstall/system/system/app/FaceLock/lib/arm64/libfacenet.so"
222 install -d "/postinstall/system/app/LatinIME/lib64/arm64"
223 ln -sfn "/postinstall/system/lib64/libjni_latinimegoogle.so" "/postinstall/system/app/LatinIME/lib64/arm64/libjni_latinimegoogle.so"
224 ln -sfn "/postinstall/system/lib64/libjni_keyboarddecoder.so" "/postinstall/system/app/LatinIME/lib64/arm64/libjni_keyboarddecoder.so"
225
226 # Apply build.prop changes (from GApps Installer)
227 sed -i "s/ro.error.receiver.system.apps=.*/ro.error.receiver.system.apps=com.google.android.gms/g" /postinstall/system/build.prop
228 ;;
229esac