No description
Find a file
2021-01-02 13:40:19 +03:00
.abf.yml Init (thanks to Debian package) 2021-01-02 13:40:19 +03:00
0001-fix-spelling-errors-in-external-libraries.patch Init (thanks to Debian package) 2021-01-02 13:40:19 +03:00
0002-exclude-external-from-all-target.patch Init (thanks to Debian package) 2021-01-02 13:40:19 +03:00
0003-pass-dpkg-buildflags-to-external-android-emugl.patch Init (thanks to Debian package) 2021-01-02 13:40:19 +03:00
0004-Use-system-cpu_features-and-sdbus-cpp.patch Init (thanks to Debian package) 2021-01-02 13:40:19 +03:00
0005-Off-Werror.patch Init (thanks to Debian package) 2021-01-02 13:40:19 +03:00
anbox-container-manager.service Init (thanks to Debian package) 2021-01-02 13:40:19 +03:00
anbox-session-manager.service Init (thanks to Debian package) 2021-01-02 13:40:19 +03:00
anbox.1 Init (thanks to Debian package) 2021-01-02 13:40:19 +03:00
anbox.desktop Init (thanks to Debian package) 2021-01-02 13:40:19 +03:00
anbox.spec Init (thanks to Debian package) 2021-01-02 13:40:19 +03:00
README.ROSA Init (thanks to Debian package) 2021-01-02 13:40:19 +03:00

Anbox for Debian
----------------

* Setup

In order to run Android system inside container, you need two kernel
modules: ashmem_linux and binder_linux.

On ROSA, install dkms-anbox-modules or binary kernel modules for your kernel,
e.g. kernel-modules-anbox-generic-5.10-latest, if they are available.

Run following commands to check if you have the kernel modules:

  modinfo binder_linux
  modinfo ashmem_linux

You also need to download the Android image to /var/lib/anbox/android.img.
The path is important, since the systemd service metioned below will check it.
The pre-build image can be found at <https://build.anbox.io/android-images>.

Then start the anbox-container-manager.service and the
anbox-session-manager.service, anbox-session-manager.service is a systemd
user service.

Add lxc to autostart and start it right now:

  sudo systemctl enable --now lxc

You can run following commands to manually start and enbale (add to autostart) the services:

  sudo systemctl enable --now anbox-container-manager.service
  systemctl --user enable --now anbox-session-manager.service

If the above commands all succeed, you can start the Android application from
desktop menu now. Or you launch application from command line:

  anbox launch --package=org.anbox.appmgr --component=org.anbox.appmgr.AppViewActivity

* Debug

You can launch the anbox process manually with ANBOX_LOG_LEVEL=debug
environment.

For example,

  env ANBOX_LOG_LEVEL=debug anbox session-manager
  env ANBOX_LOG_LEVEL=debug anbox launch --package=org.anbox.appmgr --component=org.anbox.appmgr.AppViewActivity

/var/lib/anbox/logs/container.log contains the LXC log.
/var/lib/anbox/logs/console.log contains the console log of Android system,

Android root shell can be gained by running:

  sudo anbox-shell

Then you can run `logcat` inside to see the Android logs.

* Applications

The upstream Android image doesn't bring any App Store, but you can use adb to
install applications from the command line:

  wget https://f-droid.org/FDroid.apk
  adb install FDroid.apk

As shown in the above example, you can download F-Droid apk from its website
and install it with adb.

abd utility is in the package android-tools in ROSA.

* Misc

1. Anbox may not work with Nvidia graphic drivers. If your meet segmentation
   fault, please try to uninstall the drivers first.
2. If you see segfault or other errors from Android, you can try to update
   Android rootfs image, as it may be fixed by upstream.
3. Some system may lack features to run Anbox, this can be checked with
   command: `anbox check-features`.

More documents can be found at <https://docs.anbox.io/>.

 -- Shengjing Zhu <zhsj@debian.org>  Sun, 27 Oct 2019 23:08:28 +0800
 -- Mikhail Novosyolov <m.novosyolov@rosalinux.ru>  Sat, 01 Jan 2021 00:31:00 +0300