Anbox is a container-based approach to boot a full Android system on a regular GNU/Linux system https://anbox.io
Find a file
2016-11-28 07:41:48 +01:00
android Drop extensive logging from anboxd service 2016-11-28 07:41:48 +01:00
cmake Initial work 2016-06-14 11:34:17 +02:00
data Drop temporary file we don't want to track 2016-06-20 08:28:24 +02:00
debian debian: add libcap-dev as dependency a remove dbus-cpp version requirement 2016-07-08 17:43:41 +02:00
external Revert "First attempt on getting rid of the socket server" 2016-11-18 12:53:43 +01:00
kernel Add install targets for our kernel modules 2016-09-17 10:48:24 +02:00
scripts Add simple script to build and load relevant kernel modules 2016-11-28 07:34:26 +01:00
src Drop not available logging function in rpc message processor 2016-11-27 16:03:58 +01:00
tests Move all qemu stuff in the correct subdirectory/namespace 2016-07-04 16:18:15 +02:00
.gitignore Add .gitignore file 2016-08-10 14:07:01 +02:00
Android.mk Set focus to current active window 2016-11-26 13:04:50 +01:00
CMakeLists.txt Install and load our translator libraries on startup 2016-09-30 17:21:15 +02:00
COPYING.GPL Add proper README and COPYING file 2016-06-20 09:37:16 +02:00
create-click.sh Initial infrastructure to create a click package 2016-06-20 08:25:38 +02:00
cross-compile-chroot.sh Initial work 2016-06-14 11:34:17 +02:00
README.md Add proper README and COPYING file 2016-06-20 09:37:16 +02:00
snapcraft.yaml Drop kernel modules and shell from snap 2016-11-27 16:04:41 +01:00

Anbox

Anbox is container based approach to boot a full Android system.

Overview

Anbox uses Linux namespaces (user, pid, uts, net, mount, ipc) to run a full Android system in a container and provide Android applications on any platform.

The container itself does not run as root but as a unprivileged user. It just need to be able to perform a few operations to setup a container like spawning up new namespaces, chroot'ing to a rootfs etc.

Android inside the container has no direct access to any hardware. All hardware access is going through the anbox daemon. We're reusing what Android has implemented for the Qemu based emulator. The Android system inside the container uses different pipes to communicate with the host system and sends all hardware access commands through these. OpenGL rendering is provided through this.

For more details have a look at the following documentation pages:

Anbox reuses code from other projects like the Android Qemu emulator or bubblewrap (https://github.com/projectatomic/bubblewrap). These projects are available in the external/ subdirectory with the licensing terms included.

The anbox source itself (in src/) is licensed under the terms of the GPLv3 license:

Copyright (C) 2016 Simon Fels morphis@gravedo.de

This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License version 3, as published by the Free Software Foundation.

This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranties of MERCHANTABILITY, SATISFACTORY QUALITY, or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.

You should have received a copy of the GNU General Public License along with this program. If not, see http://www.gnu.org/licenses/.