X-Git-Url: https://glassweightruler.freedombox.rocks/gitweb/waydroid.git/blobdiff_plain/da80e34ad3335eb64221eacda22cad8c4c97bb6a..f46d9f8a8f1c2857c9802f3c2bef6354243dc6ea:/scripts/run-container.sh diff --git a/scripts/run-container.sh b/scripts/run-container.sh index 0010a20..8786995 100644 --- a/scripts/run-container.sh +++ b/scripts/run-container.sh @@ -3,15 +3,85 @@ cd /home/anbox # just in case, stop Anbox 7 stop anbox-container || true + +# start cgroup-lite, else container may fail to start. +start cgroup-lite +umount -l /sys/fs/cgroup/schedtune + +# start sensors hal +start anbox-sensors + +# start lxc-net, that sets up lxc bridge +start lxc-net +brctl addbr anbox0 + +# stop nfcd to not conflict with anbox +stop nfcd + # umount rootfs if it was mounted umount -l rootfs || true -./mount.sh + +mkdir -p /home/anbox/rootfs +mkdir -p /home/anbox/data +mount anbox_arm64_system.img rootfs +mount -o remount,ro rootfs +mount anbox_arm64_vendor.img rootfs/vendor +mount -o remount,ro rootfs/vendor +mount -o bind anbox.prop rootfs/vendor/anbox.prop + +if mountpoint -q -- /odm; then + mount -o bind /odm rootfs/odm_extra +else + if [ -d /vendor/odm ]; then + mount -o bind /vendor/odm rootfs/odm_extra + fi +fi + +# TODO: Move this to installer script +SKU=`getprop ro.boot.product.hardware.sku` +mount -o remount,rw rootfs/vendor +cp -p /vendor/etc/permissions/android.hardware.nfc.* rootfs/vendor/etc/permissions/ +cp -p /vendor/etc/permissions/android.hardware.consumerir.xml rootfs/vendor/etc/permissions/ +cp -p /odm/etc/permissions/android.hardware.nfc.* rootfs/vendor/etc/permissions/ +cp -p /odm/etc/permissions/android.hardware.consumerir.xml rootfs/vendor/etc/permissions/ +if [ ! -z $SKU ]; then + cp -p /odm/etc/permissions/sku_${SKU}/android.hardware.nfc.* rootfs/vendor/etc/permissions/ + cp -p /odm/etc/permissions/sku_${SKU}/android.hardware.consumerir.xml rootfs/vendor/etc/permissions/ +fi +if [ -f /vendor/lib/libladder.so ] && [ ! -f rootfs/vendor/lib/libladder.so ]; then + cd rootfs/vendor/lib + wget https://github.com/GS290-dev/gigaset_gs290_dump/raw/full_k63v2_64_bsp-user-10-QP1A.190711.020-1597810494-release-keys/vendor/lib/libladder.so + cd ../../.. +fi +if [ -f /vendor/lib64/libladder.so ] && [ ! -f rootfs/vendor/lib64/libladder.so ]; then + cd rootfs/vendor/lib64 + wget https://github.com/GS290-dev/gigaset_gs290_dump/raw/full_k63v2_64_bsp-user-10-QP1A.190711.020-1597810494-release-keys/vendor/lib64/libladder.so + cd ../../.. +fi +mount -o remount,ro rootfs/vendor # Anbox binder permissions chmod 666 /dev/anbox-*binder +chmod 777 /dev/ashmem # Wayland socket permissions -chmod 777 /run/user/32011 -chmod 777 /run/user/32011/wayland-1 +chmod 777 -R /run/user/32011 + +# Set sw_sync permissions +chmod 777 /dev/sw_sync +chmod 777 /sys/kernel/debug/sync/sw_sync + +# Media nodes permissions +chmod 777 /dev/Vcodec +chmod 777 /dev/MTK_SMI +chmod 777 /dev/mdp_sync +chmod 777 /dev/mtk_cmdq +chmod 777 /dev/video32 +chmod 777 /dev/video33 + +# Graphics nodes permissions +chmod 777 -R /dev/dri/* +chmod 777 -R /dev/graphics/* +chmod 777 -R /dev/fb* lxc-start -n anbox -F -- /init