Anbox - Le Bottin des Jeux Linux

Anbox

🗃️ Specifications

📰 Title: Anbox 🕹️ / 🛠️ Type: Tool
🗃️ Genre: Emulation 🚦 Status: 07. To be re-tested
🏷️ Category: Emulation ➤ Engine ➤ Android 🌍️ Browser-based:
🔖 Tags: Emulator; ANDROID 📦️ Package Name: anbox
🐣️ Approx. start: 📦️ Arch:
🐤️ Latest: 2021-10-20 🍥️ On Deb repo: ✓
📍️ Version: Latest : (waiting) / Dev : 84f0268 📦️ Deb: ✓
🏛️ License type: FOSS/Libre 📦️ RPM:
🏛️ License: Apache 2.0 & GPL-3 📦️ AppImage:
🏝️ Perspective: Third & First person 📦️ Snap: ✓
👁️ Visual: 2D & 3D 📦️ Flatpak/Athenaeum:
⏱️ Pacing: Real Time ⚙️ Generic bin.:
👫️ Played: Single & Multi 📄️ Source:
🎖️ This record: 5 stars 📱️ PDA support:
🎖️ Game design: 👫️ Contrib.: Goupil & Louis
🎰️ ID: 15289 🐛️ Created: 2018-01-04
🐜️ Updated: 2021-11-14

📖️ Summary

[fr]: Un environnement Android (système d'exploitation) complet et libre dans un conteneur (LXC) l'isolant de l'hôte, permettant d'exécuter des applications Android sous Linux, sans la lenteur de la virtualisation. Chaque application Android s'intègre au système d'exploitation de l'utilisateur, comme toute autre application native, sans problème de compatibilité, et en toute sécurité, puisqu'elle ne dispose pas d'accès directe au matériel ni aux données de l'utilisateur. [en]: A libre full Android environment (operating system) in a container (LXC), isolating him from the host, allowing the user to run Android applications under Linux, without the slowness of virtualization. Each Android application integrates with the user's operating system, like any other native application, without compatibility issues, and in complete security, since it does not have direct access to the hardware or data of the user.

🎥️ Videos

🎥️ Trailer : (202xxx)


🕯️ How To : (202xxx), (202xxx), (202xxx),


🎮️ Quelques exemples / Some examples (Showcase) :

🕸️ Links

🏡️ Website & videos
[Homepage] [Dev site] [Features/About] [Screenshots] [Videos t(202xxx) ts(202xxx) gd(202xxx) id(202xxx) r(202xxx) lp(202xxx) ht(202xxx) ht(202xxx) ht(202xxx) ht(202xxx) ht(202xxx) d(202xxx) ht[fr](202xxx) g[de](202xxx) g[ru](202xxx) g[pl](202xxx) g[cz](202xxx) ht[sp](202xxx) g[pt](202xxx) g[it](202xxx) g[tr](202xxx)] [WIKI] [FAQ] [RSS] [Changelog 1 2 3]

💵 Commercial : (empty)

🍩️ Resources
(empty) :
🛠️ Technical informations
[Open Hub] [PCGamingWiki] [MobyGames] [Anbox (Install Anbox)]

🐘 Social
Devs (Anbox Team 1 2 [fr] [en]) : [Site 1 2] [twitter] [YouTube] [Interview 1 2]
Game : [Blog] [Forums] [twitter] [YouTube]

🐝️ Related
[Wikipedia (Anbox) [fr] [en] [de]]
[Debian] [Snap] [Linux Magazine] [Xakep.ru [ru]]

🕵️ Reviews
[metacritic]

🐘 Social Networking Update (on Mastodon)

🛠️ Title:
🦊️ What's:
🏡️
🐣️
🔖 #linux

🐧 Update:
💼️
📌️ Changes:
📖 Our entry: https://bit.ly/bottinLightOn
🐘 From:
🏝️ http://youtu.be/
🕵️ http://youtu.be/
🕹️ http://youtu.be/
🐧 http://youtu.be/

Source of this Entry:

📕 Description [fr]

Un environnement Android (système d'exploitation) complet, permettant d'exécuter des applications Android sous Linux, par l'Anbox Team, initié par Marius Gripsgard, Ricardo Mendoza, Simon Fels, Thomas Voß.

Anbox (android-in-a-box) est un environnement Android (système d'exploitation) complet et libre dans un conteneur (LXC) l'isolant de l'hôte, permettant d'exécuter des applications Android sous Linux, sans la lenteur de la virtualisation. Chaque application Android s'intègre au système d'exploitation de l'utilisateur, comme toute autre application native, sans problème de compatibilité, et en toute sécurité, puisqu'elle ne dispose pas d'accès directe au matériel ni aux données de l'utilisateur.

Crédit image (lien ci-dessus) : Xakep.ru


Android dans une boîte

Exécutez les applications Android sur n’importe quel système d’exploitation GNU/Linux.

Comment ça marche ?

Anbox place le système d'exploitation Android dans un conteneur, ajoute une couche d'abstraction à l'accès au matériel et intègre les services système essentiels dans un système GNU/Linux. Chaque application Android sera intégrée à votre système d'exploitation, comme toute autre application native.

Pour atteindre notre objectif, nous utilisons des technologies Linux standard telles que les conteneurs (LXC) afin de séparer le système d'exploitation Android de l'hôte. Toute version Android convient à cette approche et nous essayons de suivre la dernière version disponible du projet Open Source Android.

Commencer !

L'installation d'Anbox sur un système Linux classique n'est pas difficile lorsque vous avez déjà la possibilité d'installer des snaps. Empaqueter Anbox à l'intérieur d'un snap nous facilite la tâche pour rassembler tous les éléments nécessaires et vous les envoyer !

Si votre système ne prend pas en charge les snaps, nous ne disposons actuellement pas d’un moyen simple d’installer Anbox. Toutefois, cela pourrait changer dans un proche avenir.

L'installation d'Anbox est assez facile car nous fournissons un programme d'installation qui installera tout le nécessaire sur votre système. Veuillez noter que le programme d'installation requiert des privilèges root sur vos systèmes, car il doit installer des éléments tels que des modules de noyau supplémentaires via DKMS. Vous pouvez consulter le script d'installation ici (voir le site).

AVERTISSEMENT: avant d'installer Anbox sur votre système, n'oubliez pas qu'Anbox est actuellement un logiciel au stade ALPHA. Toutes les fonctionnalités ne sont pas censées fonctionner ou fonctionnent encore pour le moment. Vous trouverez des bugs, des crashs et des problèmes inattendus. Lorsque vous le ferez, veuillez signaler un bogue ici (voir le site).

Lorsque vous êtes prêt à installer Anbox sur votre système, tout ce dont vous avez besoin est la ligne de commande suivante. Le programme d’installation vous informera de tout ce qu’il fait et vous demandera d’apporter des informations supplémentaires de votre part:

$ snap install --classic anbox-installer && anbox-installer



🍥️ Debian (traduction du Bottin) :

Android dans une boîte

Anbox est une approche basée sur les conteneurs pour démarrer un système Android complet sur un système GNU/Linux classique.

En d'autres termes: Anbox vous permettra d'exécuter Android sur votre système Linux sans la lenteur de la virtualisation.

Anbox utilise les namespaces Linux (user, pid, uts, net, mount, ipc) pour exécuter un système Android complet dans un conteneur et fournir des applications Android sur toute plate-forme GNU/Linux.

Le système Android à l'intérieur du conteneur n'a aucun accès direct au matériel. Tous les accès matériels passent par le démon anbox de l'hôte. Il réutilise ce qu'Android a implémenté dans l'émulateur basé sur QEMU pour le rendu accéléré OpenGL ES. Le système Android à l'intérieur du conteneur utilise différents canaux pour communiquer avec le système hôte et envoie toutes les commandes d'accès au matériel via celles-ci.

Ce paquet nécessite les modules du noyau Android et l’image rootfs. Pour plus d’informations, consultez /usr/share/doc/anbox/README.Debian.


🌍️ Wikipedia [en] (traduction du Bottin) :

Anbox est une couche de compatibilité libre et open source destinée à permettre aux applications et aux jeux mobiles développés pour Android de s'exécuter sur les distributions GNU/Linux.

Il exécute l'environnement d'exécution Android à l'aide de LXC (Conteneurs Linux), en recréant la structure de répertoires d'Android sous la forme d'une image de boucle montable (NdT : loop image), tout en utilisant le noyau Linux natif pour exécuter des applications.

📕 Description [en]

Android in a Box

Run Android applications on any GNU/Linux operating system.

How does it work?

Anbox puts the Android operating system into a container, abstracts hardware access and integrates core system services into a GNU/Linux system. Every Android application will be integrated with your operating system like any other native application.

To achieve our goal we use standard Linux technologies like containers (LXC) to separate the Android operating system from the host. Any Android version is suitable for this approach and we try to keep up with the latest available version from the Android Open Source Project.

Get started!

Installing Anbox on a regular Linux system isn't hard when you already have the ability to install snaps. Packaging anbox within a snap makes it really easy for us to put all necessary bits together and ship it to you!

If your system doesn't support snaps, then we currently don't have an easy way for you to install Anbox. However, this might change in the near future.

Installing Anbox is pretty easy as we provide an installer which will install all necessary things on your system. Please be aware that the installer requires root privileges on your systems as it has to install things like additional kernel modules via DKMS. You can have a look at the installer script here (see the site).

WARNING: Before you go ahead and install Anbox on your system, please keep in mind that Anbox currently is ALPHA level software. Not every feature is supposed to work or work well yet. You will find bugs, you will see crashes and unexpected problems. When you do so, please report a bug here (see the site).

When you're ready to install Anbox on your system everything you need is the following command line. The installer will tell you about everything it is doing and will prompt for any further necessary input from your side:

$ snap install --classic anbox-installer && anbox-installer


🍥️ Debian:

Android in a box

Anbox is a container-based approach to boot a full Android system on a regular GNU/Linux system.

In other words: Anbox will let you run Android on your Linux system without the slowness of virtualization.

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 GNU/Linux-based platform.

The Android inside the container has no direct access to any hardware. All hardware access is going through the anbox daemon on the host. It reuses what Android implemented within the QEMU-based emulator for OpenGL ES accelerated rendering. The Android system inside the container uses different pipes to communicate with the host system and sends all hardware access commands through these.

This package needs Android kernel modules and rootfs image, see /usr/share/doc/anbox/README.Debian for information.


🌍️ Wikipedia:

Anbox is a free and open-source compatibility layer that aims to allow mobile applications and mobile games developed for Android to run on GNU/Linux distributions.

It executes the Android runtime environment by using LXC (Linux Containers), recreating the directory structure of Android as a mountable loop image, whilst using the native Linux kernel to execute applications.

🔍️ Test [fr]

🕵️ Test (paquet snap en v.ea2b7a3 du 03/05/19 et paquet Debian v. 0.0~git20190124-1) par goupildb (config. : Debian Sid 64-bit):

(✘ v. 0.0~git20190124-1) J'ai d'abord testé le paquet Debian :
L'installation se passe bien.
Ensuite j'ai lançé :
# modprobe ashmem_linux
# modprobe binder_linux
et tenté :
$ anbox session-manager
[ 2019-05-10 13:18:36] [daemon.cpp:61@Run] Failed to connect to socket /run/anbox-container.socket: No such file or directory

(✘ paquet snap : beta: 4-e1ecd04 2018-10-17) J'ai ensuite testé le paquet snap :
# snap install --devmode --beta anbox
Ensuite j'ai lançé :
# modprobe ashmem_linux
# modprobe binder_linux
et tenté :
$ /snap/bin/anbox session-manager
libGL error: No matching fbConfigs or visuals found
libGL error: failed to load driver: swrast
libEGL warning: DRI2: failed to authenticate

ou pour avoir plus de détail :

$ LIBGL_DEBUG=verbose /snap/bin/anbox session-manager
libGL: screen 0 does not appear to be DRI2 capable
libGL: OpenDriver: trying /snap/anbox/158/usr/lib/x86_64-linux-gnu/dri/tls/swrast_dri.so
libGL: OpenDriver: trying /snap/anbox/158/usr/lib/x86_64-linux-gnu/dri/swrast_dri.so
libGL: Can't open configuration file /etc/drirc: No such file or directory.
libGL: Can't open configuration file /home/goupil2/snap/anbox/158/.drirc: No such file or directory.
libGL: Can't open configuration file /etc/drirc: No such file or directory.
libGL: Can't open configuration file /home/goupil2/snap/anbox/158/.drirc: No such file or directory.
libGL error: No matching fbConfigs or visuals found
libGL error: failed to load driver: swrast
libEGL warning: DRI2: failed to authenticate
libGL: Can't open configuration file /etc/drirc: No such file or directory.
libGL: Can't open configuration file /home/goupil2/snap/anbox/158/.drirc: No such file or directory.
libGL: Can't open configuration file /etc/drirc: No such file or directory.
libGL: Can't open configuration file /home/goupil2/snap/anbox/158/.drirc: No such file or directory.

Mais là encore snap ne parvient pas à trouver l'accélération graphique, un problème récurrent sur ma Debian.
Sur ma Debian, libGL.so.1 se trouve dans : /usr/lib/mesa-diverted/i386-linux-gnu/libGL.so.1

J'ai tenté de rechercher la solution sur internet, et en lisant des trucs, j'ai fini par me persuader d'installer le paquet nvidia-driver : quelle bêtise !
J'ai une (ancienne) carte nvidia, et pour installer son driver, je passe toujours par cette commande (qui fonctionne bien) : # m-a a-i -f nvidia-legacy-340xx-kernel-source
(le driver nvidia en version 340xx est adapté à ces anciennes cartes graphiques, pour vous ça pourra être une autre version)

La sélection du paquet nvidia-driver m'a installé des dizaines de paquets nvidia d'une version incompatible avec mon driver, ce qui a eut pour effet de planter l'accélération graphique. J'ai essayé de redémarrer (sans trop y croire, 2nde bêtise) et je me suis retrouvé en console sans interface graphique.
En console donc, impossible de désinstaller proprement tous ces paquets de manière groupée par un : # apt autoremove *nvidia*
sans qu'il me propose de désinstaller la moitié de ma distribution, et plus d'interface graphique !
De plus avec les simplifications de serveur Xorg, le fichier /etc/X11/xorg.conf n'existe plus, et je ne peux donc plus le modifier pour remplacer le driver "nvidia" par "nouveau" ou "vesa" (de mémoire) afin de récupérer une interface graphique - même en basse résolution, pour faire ces désinstallations sous Synaptic (ce qui aurait été bien plus confortable, même en basse résolution).

La simplification du paramétrage du serveur Xorg est une bonne idée, mais à condition de proposer des solutions alternatives en cas de plantage de l'accélération graphique !
Je ne comprend pas que depuis tout ce temps, on n'a toujours pas d'interface graphique de replis (sans accélération mais fonctionnelle) lorsque l'accélération graphique plante.

Bref, me voilà réduit à utiliser la console, sans interface graphique, pour désinstaller un par un (au mieux par 2 en moyenne) les dizaines de paquets nvidia avec des noms à coucher dehors, le tout à la main !
J'y ai passé quelques heures, car ma commande habituelle d'installation du driver nvidia (# m-a a-i -f nvidia-legacy-340xx-kernel-source) plantait.
Et puis une fois avoir désinstallé tous les paquets autres que *nvidia*340xx*, j'ai relancé ma commande ci-dessus, elle a à nouveau planté, et après avoir redémarré mon PC ... ô joie ... j'ai retrouvé l'accélération graphique. Bref, ça m'a servi de leçon : je n'y touche plus, tant pis pour les paquets snap !

Donc chez moi snap ne fonctionne pas, ni Andbox, mais je pense qu'il fonctionne bien ailleurs donc je laisse cette fiche en statut "Non testé" (d'autant que le souci est lié à snap, pas à Anbox).