Uruchamianie środowiska Android Aliendalvik w dystrybucjach Linux z Sailfish

Jonas Dressler z projektu GNOME, rozwijający edycję GNOME Shell dla urządzeń mobilnych, opublikował prace umożliwiające uruchomienie środowiska Aliendalvik (AppSupport) w standardowych dystrybucjach Linuksa. Aliendalvik jest warstwą dla mobilnej platformy Sailfish, która umożliwia uruchamianie aplikacji napisanych dla systemu Android. W ramach inżynierii wstecznej Aliendalvik przygotowano łatki dla serwera złożeniowego Mutter, skrypty oraz powiązania z serwerem dźwiękowym i systemem wejścia, niezbędne do uruchomienia Aliendalvik poza środowiskiem platformy Sailfish.

Uruchomienie Aliendalvik zademonstrowano na smartfonach Pinephone Pro i Oneplus 6, na których zainstalowano Arch Linux z powłoką GNOME Mobile. Zauważono, że do interakcji Aliendalvik z użytkowym środowiskiem Sailfish wykorzystywane są standardowe API Freedesktop, przykładowo powiadomienia przekazywane są przez interfejs DBus org.freedesktop.Notification, a do zarządzania odtwarzaczami muzycznymi używany jest protokół MPRIS. Każda uruchomiona aplikacja Android wyświetlana jest z wykorzystaniem osobnej powierzchni Wayland w swoim oknie, a do organizacji wejścia zastosowano protokół Wayland „text-input”.

Środowisko Aliendalvik uruchamiane jest przy pomocy narzędzi izolacji kontenerów LXC, a komponenty do integracji z systemem gospodarza są skompilowane dla architektury ARM64 i napisane z użyciem Qt. W przeciwieństwie do projektu Waydroid, który również uruchamia środowisko Android w kontenerze, Aliendalvik zapewnia ściślejszą integrację z systemem gospodarza, na przykład, aplikacje Android otwierane są w standardowych oknach, wspierana jest synchronizacja książki adresowej, a używana jest ekranowa klawiatura Sailfish.

Systemowe środowisko Sailfish opiera się na projekcie Mer (od kwietnia 2019 roku rozwijanym jako część Sailfish) oraz pakietach dystrybucji Mer Nemo. W środowisku wykorzystywane są systemd, DBus, RPM, PackageKit, PulseAudio, BlueZ, Wayland i Qt. Kompozytowy serwer lipstick zbudowany jest na podstawie QtCompositor. Do izolacji aplikacji stosowane jest Firejail. Do zarządzania połączeniami sieciowymi wykorzystywany jest ConnMan, a jako stos telefoniczny - oFono.

Źródło: opennet.ru

Kup solidny hosting stron z ochroną przed DDoS, serwery VPS VDS 🔥 Kup solidny hosting stron z ochroną przed DDoS, serwery VPS VDS | ProHoster