Extend snap packaging with further details

This commit is contained in:
Simon Fels 2016-08-22 21:58:09 +02:00
commit 117111ce20
8 changed files with 198 additions and 44 deletions

8
scripts/container-manager.sh Executable file
View file

@ -0,0 +1,8 @@
#!/bin/bash
# Make sure our setup path for the container rootfs
# is present as lxc is statically configured for
# this path.
mkdir -p $SNAP_COMMON/lxc
exec $SNAP/bin/anbox container-manager

10
scripts/container-shell.sh Executable file
View file

@ -0,0 +1,10 @@
#!/bin/bash
$SNAP/bin/lxc-attach \
--lxcpath=$SNAP_COMMON/var/lib/anbox/containers \
--name default \
--clear-env \
--set-var PATH=/system/bin:/system/sbin:/system/xbin \
--set-var ANDROID_DATA=/data \
-- \
/system/bin/sh

16
scripts/setup-rootfs.sh Executable file
View file

@ -0,0 +1,16 @@
#!/bin/bash
# We need to put the rootfs somewhere where we can modify some
# parts of the content on first boot (namely file permissions).
# Other than that nothing should ever modify the content of the
# rootfs.
ROOTFS_PATH=$SNAP_COMMON/var/lib/anbox/rootfs
if [ -d $ROOTFS_PATH ] ; then
rm -rf $ROOTFS_PATH
fi
echo "Copying rootfs into $ROOTFS_PATH .."
mkdir -p $ROOTFS_PATH
tar xf $SNAP/anbox-android-rootfs.tar -C $ROOTFS_PATH/ --strip-components=1

3
scripts/shell.sh Executable file
View file

@ -0,0 +1,3 @@
#!/bin/bash
exec /bin/bash $@

43
scripts/snap-wrapper.sh Executable file
View file

@ -0,0 +1,43 @@
#!/bin/bash
if [ "$SNAP_ARCH" == "amd64" ]; then
ARCH="x86_64-linux-gnu"
elif [ "$SNAP_ARCH" == "armhf" ]; then
ARCH="arm-linux-gnueabihf"
else
ARCH="$SNAP_ARCH-linux-gnu"
fi
export LD_LIBRARY_PATH=$SNAP/usr/lib/$ARCH:$LD_LIBRARY_PATH
# Mesa Libs
export LD_LIBRARY_PATH=$SNAP/usr/lib/$ARCH/mesa:$LD_LIBRARY_PATH
export LD_LIBRARY_PATH=$SNAP/usr/lib/$ARCH/mesa-egl:$LD_LIBRARY_PATH
# XDG Config
export XDG_CONFIG_DIRS=$SNAP/etc/xdg:$XDG_CONFIG_DIRS
export XDG_CONFIG_DIRS=$SNAP/usr/xdg:$XDG_CONFIG_DIRS
# Note: this doesn't seem to work, QML's LocalStorage either ignores
# or fails to use $SNAP_USER_DATA if defined here
export XDG_DATA_DIRS=$SNAP_USER_DATA:$XDG_DATA_DIRS
export XDG_DATA_DIRS=$SNAP/usr/share:$XDG_DATA_DIRS
# Not good, needed for fontconfig
export XDG_DATA_HOME=$SNAP/usr/share
# Tell libGL where to find the drivers
export LIBGL_DRIVERS_PATH=$SNAP/usr/lib/$ARCH/dri
# ensure the snappy gl libs win
export LD_LIBRARY_PATH="$SNAP_LIBRARY_PATH:$LD_LIBRARY_PATH"
cd $SNAP
if [ "$(id -u)" == "0" ] ; then
# Make sure our setup path for the container rootfs
# is present as lxc is statically configured for
# this path.
mkdir -p $SNAP_COMMON/lxc
fi
exec $SNAP/usr/bin/anbox $@

3
scripts/start-container.sh Executable file
View file

@ -0,0 +1,3 @@
#!/bin/bash
exec $SNAP/bin/lxc-start -P $SNAP_COMMON/var/lib/anbox/containers -n default -F