Jonas Dressler von dem GNOME-Projekt, das die GNOME Shell fĂŒr mobile GerĂ€te entwickelt, hat Arbeiten veröffentlicht, die es ermöglichen, die Umgebung Aliendalvik (AppSupport) in regulĂ€ren Linux-Distributionen zu starten. Aliendalvik ist eine Schicht fĂŒr die mobile Plattform Sailfish, die das Starten von Anwendungen, die fĂŒr die Android-Plattform geschrieben wurden, ermöglicht. Im Rahmen der RĂŒckentwicklung von Aliendalvik wurden Patches fĂŒr den Composite-Server Mutter, Skripte und Bindings ĂŒber den Soundsserver und das Eingabesystem vorbereitet, die fĂŒr den Betrieb von Aliendalvik auĂerhalb der Sailfish-Plattform erforderlich sind.
Der Start von Aliendalvik wurde auf den Smartphones Pinephone Pro und Oneplus 6 demonstriert, auf denen Arch Linux mit GNOME Mobile Shell installiert war. Es wird erwĂ€hnt, dass fĂŒr die Interaktion von Aliendalvik mit der Benutzerumgebung Sailfish die Standard-APIs von Freedesktop verwendet werden, beispielsweise werden Benachrichtigungen ĂŒber die DBus-Schnittstelle org.freedesktop.Notification ĂŒbermittelt, und fĂŒr die Steuerung von Musikplayern wird das MPRIS-Protokoll eingesetzt. Jede gestartete Android-Anwendung wird mit einer separaten Wayland-OberflĂ€che in ihrem eigenen Fenster angezeigt, und fĂŒr die Eingabe wurde das Wayland-Protokoll âtext-inputâ verwendet.
Die Umgebung Aliendalvik wird mithilfe von LXC-Containermanagement-Tools gestartet, und die Komponenten fĂŒr die Integration mit dem Host-System sind fĂŒr die ARM64-Architektur erstellt und mit Qt geschrieben. Im Gegensatz zum Ă€hnlichen Projekt Waydroid, das ebenfalls eine Android-Umgebung in einem Container ausfĂŒhrt, bietet Aliendalvik eine engere Integration mit dem Host-System, beispielsweise werden Android-Anwendungen in regulĂ€ren Fenstern geöffnet, es wird die Synchronisierung des Adressbuchs unterstĂŒtzt und es wird die Bildschirmtastatur von Sailfish verwendet.
Die Systemumgebung Sailfish basiert auf dem Projekt Mer (das seit April 2019 als Teil von Sailfish entwickelt wird) und auf Paketen der Mer-Distribution Nemo. In dieser Umgebung werden systemd, DBus, RPM, PackageKit, PulseAudio, BlueZ, Wayland und Qt verwendet. Der Composite Server lipstick basiert auf QtCompositor. FĂŒr die Isolierung der Anwendungen wird Firejail verwendet. FĂŒr das Management der Netzwerkverbindungen wird ConnMan eingesetzt, und als Telefonsystem wird oFono verwendet.
Quelle: opennet.ru
