-
Notifications
You must be signed in to change notification settings - Fork 8
/
init.mapphone_umts.rc
executable file
·684 lines (560 loc) · 19.7 KB
/
init.mapphone_umts.rc
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
on init
# Backward compatibility
symlink /dev /dev/netmux
# prepare generic keypad name
exec /init_prep_keypad.sh
mount yaffs2 mtd@system /system ro remount
mount ext3 mmc@system /system ro noatime nodiratime remount
mount rootfs rootfs / rw remount
mkdir /cdrom 0770 system system
mount yaffs2 mtd@cdrom /cdrom
symlink /dev/ttyGS0 /dev/acm0
# Create mountpoints and mount tmpfs
mkdir /pds 0775 system system
mkdir /tmp 0777 system system
mount tmpfs tmpfs /tmp size=2m
# Configure kernel options
# Enable automatic power control for EHCI USB IPC
write /sys/devices/platform/ehci-omap.0/usb1/power/level auto
write /sys/devices/platform/ehci-omap.0/usb1/power/autosuspend 0
write /sys/devices/platform/ehci-omap.0/usb1/1-3/power/level auto
write /sys/devices/platform/ehci-omap.0/usb1/1-3/power/autosuspend 0
# Reset system time
write /sys/class/rtc/rtc0/unsecured_rtc on
# Disable a system-wide task dump on OOM in default
write /proc/sys/vm/oom_dump_tasks 0
# Set core pattern
write /proc/sys/kernel/core_pattern "|/system/bin/coredump %e %p %t"
write /proc/sys/fs/suid_dumpable 2
# Power Management
write /sys/power/sleep_while_idle 1
write /sys/power/enable_off_mode 1
write /sys/devices/system/cpu/cpu0/cpufreq/scaling_governor ondemand
write /sys/devices/system/cpu/cpu0/cpufreq/scaling_min_freq 250000
write /sys/devices/system/cpu/cpu0/cpufreq/ondemand/up_threshold 86
write /sys/devices/system/cpu/cpu0/cpufreq/ondemand/sampling_rate 46875
write /sys/power/sr_vdd1_autocomp 1
write /sys/power/sr_vdd2_autocomp 1
write /sys/power/enable_abb_mode 1
# Change ownership for vibrators
chown system system /sys/class/timed_output/lvibrator/enable
chown system system /sys/class/timed_output/vibrator/enable
# Change permission of vibrators
chmod 0660 /sys/class/timed_output/lvibrator/enable
chmod 0660 /sys/class/timed_output/vibrator/enable
# Mount mtd partitions
# mount /pds as r/w
# We chown/chmod /pds again so because mount is run as root + defaults
mount yaffs2 mtd@pds /pds nosuid nodev no-checkpoint
exec /system/bin/logwrapper /system/bin/mount_ext3.sh pds /pds
chown system system /pds
chmod 0775 /pds
mkdir /pds/comm_drv 0770 radio radio
mkdir /pds/public 0775 system shell
chown system shell /pds/public
# Mount preinstall partition
mkdir /preinstall 0771 system system
exec /system/bin/logwrapper /system/bin/mount_ext3.sh preinstall /preinstall
chmod 0771 /preinstall
chown system system /preinstall
# Create basic filesystem structure
# create moto specific dirs for mystuff
mkdir /data/download 0775 system system
mkdir /data/download/mystuff 0775 system system
# create moto specific dirs for wifi
mkdir /data/system 0771 system system
# wifi dirs
mkdir /data/misc/wifi 0770 wifi wifi
mkdir /data/misc/wifi/sockets 0770 wifi wifi
mkdir /data/misc/dhcp 0770 dhcp dhcp
chown dhcp dhcp /data/misc/dhcp
mkdir /pds/wifi 0771 wifi wifi
mkdir /data/comm_drv 0770 radio radio
mkdir /data/gki 0770 radio radio
mkdir /tmp/commdrv 0770 radio radio
# bluetooth power up/down interface
chown bluetooth bluetooth /sys/class/rfkill/rfkill0/type
chown bluetooth bluetooth /sys/class/rfkill/rfkill0/state
chmod 0660 /sys/class/rfkill/rfkill0/state
# following two dirs are for storing BP Flex and PDS files. NVM Daemon is using these folders
mkdir /data/bp_nvm
chown radio radio /data/bp_nvm
chmod 0770 /data/bp_nvm
mkdir /pds/bp_nvm
chown radio radio /pds/bp_nvm
chmod 0770 /pds/bp_nvm
# create logger folder for bplogd
mkdir /data/logger 0770 radio log
chown radio log /data/logger
chmod 0770 /data/logger
mkdir /data/panicreports
chown root radio /data/panicreports
chmod 0777 /data/panicreports
# create the lost+found directories, so as to enforce our permissions
mkdir /pds/lost+found 0770
# double check the perms, in case lost+found already exists, and set owner
chown root root /pds/lost+found
chmod 0770 /pds/lost+found
#Create location directory
mkdir /data/location 0771 radio radio
#Create opprof directory
mkdir /data/opprof 0770 radio shell
# Create anr directory and change permission to 777 to save trace.txt
mkdir /data/anr
chmod 0777 /data/anr
# create the necessary dirs for tpapi with proper permission
mkdir /pds/security
mkdir /data/tpapi
mkdir /data/tpapi/etc
mkdir /data/tpapi/etc/tpa
mkdir /data/tpapi/etc/tpa/persistent
chmod 2770 /pds/security
chmod 2770 /data/tpapi
chmod 2770 /data/tpapi/etc
chmod 2770 /data/tpapi/etc/tpa
chmod 2770 /data/tpapi/etc/tpa/persistent
chown mot_tpapi mot_tpapi /pds/security
chown mot_tpapi mot_tpapi /data/tpapi
chown mot_tpapi mot_tpapi /data/tpapi/etc
chown mot_tpapi mot_tpapi /data/tpapi/etc/tpa
chown mot_tpapi mot_tpapi /data/tpapi/etc/tpa/persistent
# Create wmdrm directory
mkdir /pds/wmdrm 0775 mot_drm mot_drm
# Temp workaround for HP library cleanup
symlink /dev/hp3a-omap /dev/hp3A-omap
mount rootfs rootfs / ro remount
# Install kernel modules
# Install BP related kernel modules
#Start the engine modules for netmux first for other daemons depends on it
insmod /system/lib/modules/netmux.ko
insmod /system/lib/modules/netmux_linkdriver.ko
insmod /system/lib/modules/modem_pm_driver.ko
insmod /system/lib/modules/sec.ko
# Install GAN virtual interface kernel module
insmod /system/lib/modules/kineto_gan.ko
# chown/chmod for FOTA
chown system system /cache/fota
chmod 0770 /cache/fota
on early-boot
# Adjust the out of memory thresholds to account for the larget
# space on sholes. These numbers are in pages (4k). Must be kept
# in sync with init.rc. This must be done before the regular init.rc
# since these properies can't change once set.
setprop ro.FOREGROUND_APP_MEM 3072
setprop ro.VISIBLE_APP_MEM 4608
setprop ro.SECONDARY_SERVER_MEM 9216
setprop ro.BACKUP_APP_MEM 9216
setprop ro.HOME_APP_MEM 9216
setprop ro.HIDDEN_APP_MEM 10752
setprop ro.CONTENT_PROVIDER_MEM 12288
setprop ro.EMPTY_APP_MEM 12288
class_start media_early_init
on boot
# Overwrite what init.rc selected for the memory killer params to match above.
write /sys/module/lowmemorykiller/parameters/minfree 3072,4608,9216,10752,12288,12288
# Define Motorola DBVC ATVC Property defaults (failsafe properties)
setprop ro.sys.atvc_allow_netmon_usb 0
setprop ro.sys.atvc_allow_netmon_ih 0
setprop ro.sys.atvc_allow_res_core 0
setprop ro.sys.atvc_allow_res_panic 0
setprop ro.sys.atvc_allow_all_adb 0
setprop ro.sys.atvc_allow_all_core 0
setprop ro.sys.atvc_allow_efem 0
setprop ro.sys.atvc_allow_bp_log 0
setprop ro.sys.atvc_allow_ap_mot_log 0
setprop ro.sys.atvc_allow_gki_log 0
# Change the ownership of led files.
chown system system /sys/class/leds/lcd-backlight/als
chown system system /sys/class/leds/lcd-backlight/pwm_mode
chown system system /sys/class/leds/lcd-backlight/brightness
chmod 0660 /sys/class/leds/lcd-backlight/brightness
chown system system /sys/class/leds/keyboard-backlight/brightness
chmod 0660 /sys/class/leds/keyboard-backlight/brightness
chown system system /sys/class/leds/keyboard1-backlight/brightness
chmod 0660 /sys/class/leds/keyboard1-backlight/brightness
chown system system /sys/class/leds/keyboard2-backlight/brightness
chmod 0660 /sys/class/leds/keyboard2-backlight/brightness
chown system system /sys/class/leds/button-backlight/brightness
chmod 0660 /sys/class/leds/button-backlight/brightness
chown system system /sys/class/leds/red/blink
chmod 0660 /sys/class/leds/red/blink
chown system system /sys/class/leds/red/brightness
chmod 0660 /sys/class/leds/red/brightness
chown system system /sys/class/leds/green/brightness
chmod 0660 /sys/class/leds/green/brightness
chown system system /sys/class/leds/blue/brightness
chmod 0660 /sys/class/leds/blue/brightness
chmod 0660 /sys/class/leds/torch-flash/camera_strobe
chmod 0660 /sys/class/leds/torch-flash/flash_light
chown system system /sys/class/leds/torch-flash/camera_strobe
chown system system /sys/class/leds/torch-flash/flash_light
chown system system /sys/class/leds/spotlight/brightness
chmod 0660 /sys/class/backlight/adp8870_bl/brightness
chown system system /sys/class/backlight/adp8870_bl/brightness
chmod 0660 /sys/class/leds/adp8870-led7/brightness
chown system system /sys/class/leds/adp8870-led7/brightness
# Define TCP buffer sizes for various networks
# ReadMin, ReadInitial, ReadMax, WriteMin, WriteInitial, WriteMax,
setprop net.tcp.buffersize.umts 64000,128000,256000,4096,16384,110208
setprop net.tcp.buffersize.edge 16384,35040,65536,4096,16384,35040
# Camera related
chmod 0660 /dev/hplens-omap
chown media camera /dev/hplens-omap
# Enable panic on softlockup
write /proc/sys/kernel/softlockup_panic 1
# Start services
exec /system/bin/mot_boot_mode
# Set core max size (2G)
setrlimit 4 2147483648 2147483648
# The properties introduced by moto
on property:sys.chargeonly.mode=1
start battd
start console
write /data/chargeonlymode charging
exec /system/bin/charge_only_mode
# Power up to normal
on property:tcmd.suspend=0
class_start pre-zygote_services
class_start zygote_services
class_start post-zygote_services
# Power up to suspend
on property:tcmd.suspend=1
class_start pre-zygote_services
class_start post-zygote_services
# Normal to suspend
on property:tcmd.suspend=2
class_stop zygote_services
# aplogd on at boot in emulator
on property:ro.kernel.qemu=1
start aplogd
on property:persist.service.aplogd.enable=1
start aplogd
on property:persist.service.aplogd.enable=0
stop aplogd
on property:ro.sys.atvc_allow_gki_log=1
start gkilogd
on property:ro.sys.atvc_allow_gki_log=0
stop gkilogd
# Moto safe power down
on property:sys.reboot=1
stop ssmgrd
exec /system/bin/sleep 10
exec /system/bin/reboot
on property:sys.shutdown=1
stop ssmgrd
exec /system/bin/sleep 10
exec /system/bin/reboot -p
on property:init.svc.wpa_supplicant=stopped
stop dhcpcd
# The following services are added by moto
# Set property strings for ATVC logging
# This conditionally sets :
# ro.sys.atvc_allow_bp_log
# ro.sys.atvc_allow_gki_log
# ro.sys.atvc_allow_ap_mot_log
# ro.sys.atvc_allow_all_core
# ro.sys.atvc_allow_res_core
# ro.sys.atvc_allow_res_panic
# ro.sys.atvc_allow_efem
# ro.sys.atvc_allow_netmon_usb
# ro.sys.atvc_allow_netmon_ih
# ro.sys.atvc_allow_all_adb
service atvc /system/bin/dbvc_atvc_property_set
class pre-zygote_services
user system
group system
oneshot
#service watchdogd /system/bin/watchdogd
# class pre-zygote_services
service telnet /system/bin/telnetd
class pre-zygote_services
oneshot
service usbd /system/bin/usbd
class pre-zygote_services
service nvm-daemon /system/usr/bin/nvm_daemon
class pre-zygote_services
user radio
group radio
# start start_modem.sh to for development purpose
service start_modem /system/bin/sh /system/usr/bin/start_modem.sh
class pre-zygote_services
oneshot
# start commdrv pds script
service start_commdrv /system/bin/sh /system/etc/motorola/comm_drv/commdrv_fs.sh
class pre-zygote_services
oneshot
user radio
group radio
service gkisystem /system/bin/gkisystem
class pre-zygote_services
socket location_shim stream 660 radio system
socket gpshal_socket stream 660 radio system
socket opprofdaemon stream 660 radio system
socket gkilog_sock stream 660 radio radio
group radio system mot_accy mot_secclkd
onrestart exec /system/usr/bin/gki_pd_notifier
service rild_tcmd /system/bin/rild_tcmd
class pre-zygote_services
socket rild_tcmd stream 0660 radio mot_tcmd
user radio
group radio
service battd /system/bin/battd
class pre-zygote_services
socket battdsock stream 0660 mot_accy mot_accy
user root
group mot_accy mot_pwric
oneshot
service catcommands /system/bin/catcommands
class pre-zygote_services
group radio
service bplogd_daemon /system/usr/bin/bplogd_daemon
class pre-zygote_services
socket dlog_cmds stream 660 radio log
socket bp_pd_status stream 660 radio log
socket bp_aol_cmd stream 666 radio log
user radio
group radio inet log sdcard_rw mount
oneshot
service modemlog /system/bin/modemlog
class pre-zygote_services
oneshot
service ssmgrd /system/xbin/ssmgrd
class post-zygote_services
group radio input mot_pwric
oneshot
service hciattach /system/bin/hciattach \
-n -t 10 /dev/ttyS1 texasalt 3000000 flow
class post-zygote_services
user bluetooth
group bluetooth net_bt_admin
disabled
service bt_init /system/bin/bt_init
class post-zygote_services
oneshot
service hciattach_rfmd /system/bin/hciattach \
-n -t 10 /dev/ttyS1 texasalt_rfmd 3000000 flow
class post-zygote_services
user bluetooth
group bluetooth net_bt_admin
disabled
service nap /system/bin/sdptool add NAP
class post-zygote_services
user bluetooth
group bluetooth net_bt_admin
disabled
oneshot
service del_nap /system/bin/sdptool remove NAP
class post-zygote_services
user bluetooth
group bluetooth net_bt_admin
disabled
oneshot
service panu /system/bin/sdptool add PANU
class post-zygote_services
user bluetooth
group bluetooth net_bt_admin
disabled
oneshot
service del_panu /system/bin/sdptool remove PANU
class post-zygote_services
user bluetooth
group bluetooth net_bt_admin
disabled
oneshot
service map /system/bin/sdptool add --channel=20 --network=1 MAP
class post-zygote_services
user bluetooth
group bluetooth net_bt_admin
disabled
oneshot
service napics /system/bin/sh /system/bin/napics.sh
class post-zygote_services
user root
disabled
oneshot
service btdhcpd /system/bin/dnsmasq -C /system/etc/btpan.conf
class post-zygote_services
user root
disabled
oneshot
service tcmd /system/bin/tcmd
class post-zygote_services
group mot_tcmd radio mot_pwric input system log camera graphics mot_accy sdcard_rw audio inet bluetooth wifi compass net_bt_admin mot_tombstone mot_tpapi mount
socket local_tcmd stream 0660 mot_tcmd mot_tcmd
socket batch_socket stream 0600 mot_tcmd mot_tcmd
oneshot
service tcmdhelp /system/bin/tcmdhelp
class post-zygote_services
socket tcmdhelp stream 0600 mot_tcmd mot_tcmd
oneshot
disabled
# turn on wifi for tcmd step one
on property:tcmd.load_wlan=1
insmod /system/lib/modules/tiwlan_drv.ko
# turn on wifi for tcmd step two
on property:tcmd.load_wlan=2
start wlan_loader
# turn on wifi for tcmd step three
on property:tcmd.load_wlan=3
exec /system/bin/ifconfig tiwlan0 up
# turn off wifi for tcmd step one
on property:tcmd.unload_wlan=1
exec /system/bin/ifconfig tiwlan0 down
# turn off wifi for tcmd step two
on property:tcmd.unload_wlan=2
exec /system/bin/rmmod tiwlan_drv
setprop wlan.driver.status unloaded
# turn on bluetooth for tcmd
on property:tcmd.bt_mod=1
insmod /system/lib/modules/wl127x_test.ko
#turn off bluetooth for tcmd
on property:tcmd.bt_mod=0
exec /system/bin/rmmod wl127x_test
#execute tcmdhelp
on property:tcmd.start_tcmdhelp=1
start tcmdhelp
service panic_daemon /system/usr/bin/panic_daemon
class post-zygote_services
user radio
group log radio system graphics sdcard_rw
socket panic_daemon stream 660 radio radio
onrestart exec /system/bin/reboot
# Ecompass daemon
service akmd2 /system/bin/akmd2
class post-zygote_services
user compass
group compass misc input
service wlan_loader /system/bin/wlan_loader \
-f /system/etc/wifi/fw_wlan1271.bin -i /system/etc/wifi/tiwlan.ini \
-e /pds/wifi/nvs_map.bin
class post-zygote_services
disabled
oneshot
service wpa_supplicant /system/bin/wpa_supplicant \
-Dtiwlan0 -itiwlan0 -c/data/misc/wifi/wpa_supplicant.conf
class post-zygote_services
# we will start as root and wpa_supplicant will switch to user wifi
# after setting up the capabilities required for WEXT
# user wifi
# group wifi inet keystore
socket wpa_tiwlan0 dgram 660 wifi wifi
disabled
oneshot
service dhcpcd /system/bin/dhcpcd -ABKL tiwlan0
class post-zygote_services
disabled
oneshot
service autoip /system/bin/dhcpcd -BK tiwlan0
class post-zygote_services
disabled
oneshot
service btdhcpcd /system/bin/dhcpcd -ABKL bnep0
class post-zygote_services
disabled
oneshot
service btautoip /system/bin/dhcpcd -BK bnep0
class post-zygote_services
disabled
oneshot
service baseimage /system/bin/dspexec -v -T /system/lib/dsp/baseimage.dof
class media_early_init
user media
group media graphics
oneshot
service pvrsrv /system/bin/pvrsrvinit
class post-zygote_services
user root
oneshot
# Reference http://twiki.mot.com/bin/view/Main/BugToGo for information & porting instructions
service bugtogo /system/bin/bugtogo.sh
class post-zygote_services
disabled
user root
oneshot
keycodes 42 14
service pppd /system/bin/pppd silent ipparam dun plugin /system/lib/libpppd_plugin.so
class post-zygote_services
user root
disabled
oneshot
service ulogd /system/xbin/ulogd
class post-zygote_services
user root
disabled
oneshot
service firewall /system/bin/firewall.sh
class post-zygote_services
user root
disabled
oneshot
service locDrv /system/usr/bin/brcm_guci_drv -config /system/etc/gpsconfig.xml
class post-zygote_services
user radio
group radio inet sdcard_rw
service pm_init /system/bin/sh /system/usr/bin/pm_init.sh
class post-zygote_services
oneshot
# aplogd is controlled by the persist.service.aplogd.enable system property
service aplogd /system/bin/aplogd
class post-zygote_services
socket ap_aol_cmd stream 666 system system
group log system sdcard_rw
oneshot
service gkilogd /system/bin/gkilogd
class post-zygote_services
socket gki_aol_cmd stream 660 radio log
user radio
group radio log sdcard_rw
service fmradio /system/bin/fmradioserver
class post-zygote_services
disabled
group bluetooth
service dlnasrv /system/bin/dlnasrv
class post-zygote_services
disabled
oneshot
service dund_dialup /system/bin/dund --listen --channel=6 --nodetach --dialup
class post-zygote_services
disabled
oneshot
service smcdaemon /system/bin/startup_smc.sh
class post-zygote_services
disabled
oneshot
# ecckeyd daemon has dependency on SMC
# It needs to be root because it needs to be able to read client's /proc/<pid>/status.
# user/group as mot_tpapi/mot_tpapi does not give it enough permission
service ecckeydaemon /system/bin/ecckeyd
class post-zygote_services
socket ecckey_socket stream 660 mot_tpapi mot_tpapi
group mot_tpapi
disabled
oneshot
on property:dev.bootcomplete=1
start loadpreinstalls
on property:ro.service.start.smc=1
start smcdaemon
start ecckeydaemon
service secclkd /system/bin/secclkd
class post-zygote_services
socket secclk_socket stream 660 mot_secclkd mot_secclkd
user mot_tpapi
group mot_tpapi mot_sec_rtc mot_secclkd
oneshot
service dla /system/bin/dla
class post-zygote_services
oneshot
on property:tcmd.ctrl_adb=1
setprop persist.service.adb.enable 1
setprop persist.factory.allow_adb 1
stop usbd
start usbd
on property:tcmd.ctrl_adb=0
setprop persist.service.adb.enable 0
setprop persist.factory.allow_adb 0
stop usbd
start usbd
service loadpreinstalls /system/bin/logwrapper /system/bin/loadpreinstalls.sh
class post-zygote_services
disabled
oneshot