on early-fs start vold on fs mount_all /vendor/etc/fstab.ranchu --early on late-fs # Mount RW partitions which need run fsck mount_all /vendor/etc/fstab.ranchu --late on early-init mount proc proc /proc remount hidepid=2,gid=3009 # true if ram is <= 2G setprop ro.config.low_ram ${ro.boot.config.low_ram} setprop ro.cpuvulkan.version ${ro.boot.qemu.cpuvulkan.version} setprop ro.hardware.egl ${ro.boot.hardwareegl:-emulation} setprop ro.hardware.vulkan ${ro.boot.hardware.vulkan} setprop ro.opengles.version ${ro.boot.opengles.version} setprop dalvik.vm.heapsize ${ro.boot.dalvik.vm.heapsize:-192m} setprop dalvik.vm.checkjni ${ro.boot.dalvik.vm.checkjni} setprop debug.hwui.renderer ${ro.boot.debug.hwui.renderer:-opengl} setprop debug.stagefright.ccodec ${ro.boot.debug.stagefright.ccodec} setprop debug.sf.nobootanimation ${ro.boot.debug.sf.nobootanimation} setprop vendor.qemu.dev.bootcomplete 0 start vendor.dlkm_loader exec u:r:modprobe:s0 -- /system/bin/modprobe -a -d /system/lib/modules zram.ko on init write /sys/block/zram0/comp_algorithm lz4 write /proc/sys/vm/page-cluster 0 # # EAS uclamp interfaces # mkdir /dev/cpuctl/foreground mkdir /dev/cpuctl/background mkdir /dev/cpuctl/top-app mkdir /dev/cpuctl/rt chown system system /dev/cpuctl chown system system /dev/cpuctl/foreground chown system system /dev/cpuctl/background chown system system /dev/cpuctl/top-app chown system system /dev/cpuctl/rt chown system system /dev/cpuctl/tasks chown system system /dev/cpuctl/foreground/tasks chown system system /dev/cpuctl/background/tasks chown system system /dev/cpuctl/top-app/tasks chown system system /dev/cpuctl/rt/tasks chmod 0664 /dev/cpuctl/tasks chmod 0664 /dev/cpuctl/foreground/tasks chmod 0664 /dev/cpuctl/background/tasks chmod 0664 /dev/cpuctl/top-app/tasks chmod 0664 /dev/cpuctl/rt/tasks start qemu-props on post-fs-data mkdir /data/vendor/var 0755 root root mkdir /data/vendor/var/run 0755 root root start qemu-device-state start ranchu-adb-setup on zygote-start # Create the directories used by the Wireless subsystem mkdir /data/vendor/wifi 0771 wifi wifi mkdir /data/vendor/wifi/wpa 0770 wifi wifi mkdir /data/vendor/wifi/wpa/sockets 0770 wifi wifi on boot chown root system /sys/power/wake_lock chown root system /sys/power/wake_unlock # Create an unused USB gadget to allow sysfs testing mkdir /config/usb_gadget/g1 0770 root root service vendor.dlkm_loader /vendor/bin/dlkm_loader class main user root group root system disabled oneshot service ranchu-setup /vendor/bin/init.ranchu-core.sh user root group root oneshot disabled service ranchu-adb-setup /system_ext/bin/init.ranchu.adb.setup.sh user system group shell stdio_to_kmsg disabled oneshot on property:vendor.qemu.vport.gnss=* symlink ${vendor.qemu.vport.gnss} /dev/gnss0 on property:vendor.qemu.timezone=* setprop persist.sys.timezone ${vendor.qemu.timezone} on property:dev.bootcomplete=1 && property:vendor.qemu.dev.bootcomplete=0 setprop vendor.qemu.dev.bootcomplete 1 start qemu-props-bootcomplete start ranchu-setup on post-fs-data && property:ro.boot.qemu.virtiowifi=1 start ranchu-net service ranchu-net /vendor/bin/init.ranchu-net.sh class late_start user root group root wakelock wifi oneshot disabled # Started on post-fs-data service dhcpclient_wifi /vendor/bin/dhcpclient -i wlan0 --no-gateway user root group root disabled service dhcpclient_def /vendor/bin/dhcpclient -i eth0 --no-gateway user root group root disabled # The qemu-props program is used to set various system # properties on boot. It must be run early during the boot # process to avoid race conditions with other daemons that # might read them (e.g. surface flinger), so define it in # class 'core' # service qemu-props /vendor/bin/qemu-props user root group root oneshot disabled service qemu-props-bootcomplete /vendor/bin/qemu-props "bootcomplete" user root group root oneshot disabled service qemu-device-state /vendor/bin/init_ranchu_device_state.sh user root group root oneshot disabled stdio_to_kmsg service goldfish-logcat /system/bin/logcat -f /dev/hvc1 ${ro.boot.logcat} class main user logd group root logd service bugreport /system/bin/dumpstate -d -p -z class main disabled oneshot keycodes 114 115 116 service wpa_supplicant /vendor/bin/hw/wpa_supplicant -Dnl80211 -iwlan0 -c/vendor/etc/wifi/wpa_supplicant.conf -g@android:wpa_wlan0 interface aidl android.hardware.wifi.supplicant.ISupplicant/default socket wpa_wlan0 dgram 660 wifi wifi group system wifi inet oneshot disabled on property:vendor.qemu.vport.bluetooth=* symlink ${vendor.qemu.vport.bluetooth} /dev/bluetooth0 service bt_vhci_forwarder /vendor/bin/bt_vhci_forwarder -virtio_console_dev=/dev/bluetooth0 class main user bluetooth group root bluetooth # Enable zram only once per boot. From: # We want one opportunity per boot to enable zram, so we # use a trigger we fire from the above stanza. If # persist.sys.zram_enabled becomes true after boot, # we don't want to run swapon_all at that time. on property:sys.boot_completed=1 trigger sys-boot-completed-set on sys-boot-completed-set && property:persist.sys.zram_enabled=1 swapon_all /vendor/etc/fstab.${ro.hardware}