Installation
The installation process currently consists of a few steps which will add additional components to your host system. These include
Out-of-tree kernel modules for binder and ashmem as no distribution kernel ships both enabled.
A udev rule to set correct permissions for /dev/binder and /dev/ashmem
A upstart job which starts the Anbox session manager as part of a user session.
To make this process as easy as possible we have bundled the necessary steps in a snap (seehttps://snapcraft.io) called "anbox-installer". The installer will perform all necessary steps. You can install it on a system providing support for snaps by running
$ snap install --classic anbox-installer
Alternatively you can fetch the installer script via
$ wget https://raw.githubusercontent.com/anbox/anbox-installer/master/installer.sh -O anbox-installer
Please note that we don't support any possible Linux distribution out there yet. Please have a look at the following chapter to see a list of supported distributions.
To proceed the installation process simply called
$ anbox-installer
This will guide you through the installation process.
NOTE:Anbox is currently in apre-alpha development state. Don't expect a fully working system for a production system with all features you need. You will for sure see bugs and crashes. If you do so, please don't hestitate and report them!
NOTE:The Anbox snap currently comescompletely unconfinedand is because of this only available from the edge channel. Proper confinement is a thing we want to achieve in the future but due to the nature and complexity of Anbox this isn't a simple task.
Supported Linux Distributions
At the moment we officially support the following Linux distributions:
Ubuntu 16.04 (xenial)
Untested but likely to work:
Ubuntu 14.04 (trusty)
Ubuntu 16.10 (yakkety)
Ubuntu 17.04 (zesty)
Install and Run Android Applications
Build from source
To build the Anbox runtime itself there is nothing special to know. We're using cmake as build system. A few build dependencies need to be present on your host system:
libdbus
google-mock
google-test
libboost
libboost-filesystem
libboost-log
libboost-iostreams
libboost-program-options
libboost-system
libboost-test
libboost-thread
libcap
libdbus-cpp
mesa (libegl1, libgles2)
glib-2.0
libsdl2
libprotobuf
protobuf-compiler
lxc
On an Ubuntu system you can install all build dependencies with the following command:
$ sudo apt install build-essential cmake cmake-data debhelper dbus google-mock \
libboost-dev libboost-filesystem-dev libboost-log-dev libboost-iostreams-dev \
libboost-program-options-dev libboost-system-dev libboost-test-dev \
libboost-thread-dev libcap-dev libdbus-1-dev libdbus-cpp-dev libegl1-mesa-dev \
libgles2-mesa-dev libglib2.0-dev libglm-dev libgtest-dev liblxc1 \
libproperties-cpp-dev libprotobuf-dev libsdl2-dev lxc-dev pkg-config \
protobuf-compiler
Afterwards you can build Anbox with
$ mkdir build
$ cd build
$ cmake ..
$ make
A simple
$ make install
will install the necessary bits into your system.
If you want to build the anbox snap instead you can do this with the following steps:
$ mkdir android-images
$ cp /path/to/android.img android-images/android.img
$ snapcraft
The result will be a .snap file you can install on a system supporting snaps
$ snap install --dangerous --devmode anbox_1_amd64.snap
Run Anbox
Running Anbox from a local build requires a few more things you need to know about. Please have a look at the"Runtime Setup"documentation.
documentation
You will find additional documentation for Anbox in thedocssubdirectory of the project source.
Interesting things to have a look at
Reporting bugs
If you have found an issue with Anbox, pleasefile a bug.
Get in Touch
If you want to get in contact with the developers please feel free to join the#anboxIRC channel onFreeNode.
Copyright and Licensing
Anbox reuses code from other projects like the Android QEMU emulator. These projects are available in the external/ subdirectory with the licensing terms included.
The anbox source itself, if not stated differently in the relevant source files, is licensed under the terms of the GPLv3 license.