Skip to main content
No. Lindroids runs as an ordinary package inside Termux or a proot distro, with Termux’s own permissions. Flatpak programs run without root too: install.sh sets Flatpak up in Termux.
Android 7 (API 24) and later. It is tested on Android 7 to 13 in QEMU lab images, and on a Samsung Galaxy Tab with Android 16.
Termux from F-Droid, from GitHub, or from Google Play. The Play build cannot open Android’s installer itself, so lindroids export saves the app to Download and opens the file manager there: tap it, then Install.
Termux:X11 is an Android app of its own: it starts a Java process inside Termux with app_process and hands surfaces over Binder with hidden Android APIs. That does not work everywhere: on x86 images with an ARM translation layer (BlissOS, Android-x86, many Chromebooks), app_process loads the translation layer, which the app sandbox kills.Lindroids’ server is a plain Linux program that touches no Android API. It is a Wayland compositor (X11 programs run through Xwayland), and each program gets a window of its own: an exported app with its own name and icon in Recents, or a browser window of its own. More in Architecture.
No. Windows, sound and input travel over one loopback port, and every connection proves who it is first: the page holds a key it cannot export (P-256, paired once), the server proves itself with a key of its own, and each window needs a ticket for its run. Another app that connects is refused; one that takes the port while the server is down is rejected by the page, which pinned the server’s key. The Wayland, X11 and PulseAudio sockets are Unix sockets in Termux’s private folder. The threat model, and the tests behind it, are in Windows and security.
Not yet. Windows are composited on the CPU and only the parts that changed are sent, in 64×64 tiles, compressed; the page draws them into a canvas at the screen’s resolution.
No. An exported app’s icon starts its program through Termux. When Termux is not running, the app shows its own page, “<name> runs in Termux, which is not running now”, whose Start hands the program to Termux; after that the app opens it by itself. More in A program’s own app.
Any Linux program with a window: Termux packages, programs in a proot distro (Debian, Ubuntu, Arch, Fedora and others), Flatpaks from Flathub, and X11 programs (lindroids setup x11).
On Discord, or in a GitHub issue. Include lindroids version, your device and Android version, and which Termux. lindroids doctor finds the common problems.