Skip to content

Instantly share code, notes, and snippets.

@UniversalSuperBox
Last active June 19, 2018 19:51
Show Gist options
  • Save UniversalSuperBox/9421e4f1350e8959d2205cb3ad14a944 to your computer and use it in GitHub Desktop.
Save UniversalSuperBox/9421e4f1350e8959d2205cb3ad14a944 to your computer and use it in GitHub Desktop.
Halium Android pre-start.sh replacement for halium-boot
#!/bin/sh
for mountpoint in /android/*; do
mount_name=`basename $mountpoint`
desired_mount=$LXC_ROOTFS_PATH/$mount_name
# Remove symlinks, for example bullhead has /vendor -> /system/vendor
[ -L $desired_mount ] && rm $desired_mount
[ -d $desired_mount ] || mkdir $desired_mount
mount --bind $mountpoint $desired_mount
done
mknod -m 666 $LXC_ROOTFS_PATH/dev/null c 1 3
# Create /dev/pts if missing
mkdir -p $LXC_ROOTFS_PATH/dev/pts
# Pass /sockets through
mkdir -p /dev/socket $LXC_ROOTFS_PATH/socket
mount -n -o bind,rw /dev/socket $LXC_ROOTFS_PATH/socket
rm $LXC_ROOTFS_PATH/sbin/adbd
sed -i '/on early-init/a \ mkdir /dev/socket\n\ mount none /socket /dev/socket bind' $LXC_ROOTFS_PATH/init.rc
sed -i "/mount_all /d" $LXC_ROOTFS_PATH/init.*.rc
sed -i "/swapon_all /d" $LXC_ROOTFS_PATH/init.*.rc
sed -i "/on nonencrypted/d" $LXC_ROOTFS_PATH/init.rc
# Config snippet scripts
run-parts /var/lib/lxc/android/pre-start.d || true
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment