Jonas Dressler van het GNOME-project, die de GNOME Shell-editie voor mobiele apparaten ontwikkelt, heeft zijn bevindingen gepubliceerd waarmee de Aliendalvik-omgeving (AppSupport) in reguliere Linux-distributies kan worden uitgevoerd. Aliendalvik is een laag voor het mobiele platform Sailfish, waarmee applicaties die voor het Android-platform zijn geschreven, kunnen worden uitgevoerd. Bij het reverse-engineering van Aliendalvik zijn patches voorbereid voor de compositorserver Mutter, scripts en wrappers voor de geluidsserver en het invoersysteem, die nodig zijn om Aliendalvik buiten de Sailfish-platformomgeving te draaien.
De start van Aliendalvik is gedemonstreerd op de smartphones Pinephone Pro en Oneplus 6, waarop Arch Linux met de GNOME Mobile-shell was geïnstalleerd. Het wordt opgemerkt dat de interactie tussen Aliendalvik en de gebruikersomgeving van Sailfish gebruikmaakt van standaard Freedesktop-API's, bijvoorbeeld meldingen worden verzonden via de DBus-interface org.freedesktop.Notification, en voor het beheren van muziekspelers wordt het MPRIS-protocol gebruikt. Elke draaiende Android-applicatie wordt weergegeven met behulp van een aparte Wayland-oppervlak in zijn eigen venster, en voor invoer werd het Wayland-protocol 'text-input' gebruikt.
De Aliendalvik-omgeving wordt uitgevoerd met behulp van LXC-containerisolatie-tools, en de componenten voor integratie met het host-systeem zijn opgebouwd voor de ARM64-architectuur en geschreven met Qt. In tegenstelling tot een vergelijkbaar project, Waydroid, dat ook een Android-omgeving in een container uitvoert, biedt Aliendalvik een hechtere integratie met het host-systeem; Android-applicaties worden bijvoorbeeld geopend in normale vensters, contacten worden gesynchroniseerd en het touchscreen-toetsenbord van Sailfish wordt gebruikt.
De Sailfish-systeemomgeving is gebaseerd op het Mer-project (dat sinds april 2019 als onderdeel van Sailfish wordt ontwikkeld) en de Mer-distributiepakketten van Nemo. In de omgeving worden systemd, DBus, RPM, PackageKit, PulseAudio, BlueZ, Wayland en Qt gebruikt. De compositor lipstick is gebaseerd op QtCompositor. Voor de isolatie van applicaties wordt Firejail gebruikt. Voor het beheren van netwerkverbindingen wordt ConnMan ingezet, en oFono fungeert als telefonie-stack. server Jonas Dressler van het GNOME-project, die de GNOME Shell-editie voor mobiele apparaten ontwikkelt, heeft zijn bevindingen gepubliceerd waarmee de Aliendalvik-omgeving (AppSupport) in reguliere distributies kan worden uitgevoerd.
Bron: opennet.ru
