Extend snap packaging with further details
This commit is contained in:
parent
1c9ebae83d
commit
117111ce20
8 changed files with 198 additions and 44 deletions
8
scripts/container-manager.sh
Executable file
8
scripts/container-manager.sh
Executable 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
10
scripts/container-shell.sh
Executable 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
16
scripts/setup-rootfs.sh
Executable 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
3
scripts/shell.sh
Executable file
|
|
@ -0,0 +1,3 @@
|
|||
#!/bin/bash
|
||||
|
||||
exec /bin/bash $@
|
||||
43
scripts/snap-wrapper.sh
Executable file
43
scripts/snap-wrapper.sh
Executable 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
3
scripts/start-container.sh
Executable file
|
|
@ -0,0 +1,3 @@
|
|||
#!/bin/bash
|
||||
|
||||
exec $SNAP/bin/lxc-start -P $SNAP_COMMON/var/lib/anbox/containers -n default -F
|
||||
Loading…
Add table
Add a link
Reference in a new issue