100% Rootless • PRoot Subsystem Engine

Run Full Linux CLI Environments on Android

Complete Linux Installer brings full Ubuntu terminal environments, VT100 pseudo-terminal emulation, and one-click developer CLI stacks directly to your Android device — without needing root permissions.

Linux on Android App Screenshot
100%
Rootless PRoot Operation
15+
Years of Project Evolution
3
Architectures (ARM64, x86_64, ARMv7)
1-Click
Developer Stacks & CLI Utilities

Everything You Need for Mobile Command-Line

Turn any Android phone or tablet into a portable CLI development workstation or lightweight server.

🔒

100% Rootless Freedom

Operates entirely in user-space via native PRoot ptrace system call interception. No root access, bootloader unlocking, or system modifications required.

Interactive Native Terminal

Built-in VT100/XTerm terminal emulator with full ANSI color support, PTY window resize, scroll buffer, and custom quick-action keys (Ctrl, Alt, Esc, Tab, Arrows).

💻

Full Shell & Command Line

Interactive POSIX PTY terminal environment supporting Zsh, Bash, Tmux, Htop, Neovim, and custom toolbar key bindings.

Zero-Hang APT Engine

Arch-aware mirror detection (ports.ubuntu.com for ARM vs archive.ubuntu.com for x86) with disabled HTTP pipelining for fast, reliable package updates.

🌐

Multi-Arch Engine

Automatic architecture detection and native execution support for 64-bit ARM (aarch64), 64-bit x86 (amd64), and 32-bit ARM (armhf) processors.

📁

Storage & Device Binding

Automatic mounting of Android storage (/sdcard) and system pseudofs (/proc, /sys, /dev) alongside Link2Symlink SELinux compatibility.

Pre-Configured Developer Workstations

Install complete CLI developer environments with a single tap in the Software Hub.

Node.js Developer Stack

Complete JavaScript & TypeScript backend environment featuring Node.js, npm, Yarn, GCC build-essential, Neovim, and Git.

nodejs npm yarnpkg build-essential git neovim
View Installation Logic →
bash — linuxonandroid

ubuntu@android:~$ node -v

v20.18.0

ubuntu@android:~$ npm --version

10.8.2

ubuntu@android:~$ git status

On branch main. Your branch is up to date with 'origin/main'.

Python 3 Developer Stack

Modern Python development environment with Python 3, pip3, virtualenv, GCC C/C++ compiler tools, Git, and Neovim.

python3 python3-pip python3-venv build-essential git
View Installation Logic →
bash — linuxonandroid

ubuntu@android:~$ python3 --version

Python 3.14.0

ubuntu@android:~$ pip3 list

Package Version --- pip 24.0, setuptools 69.5.1

Android Developer Tools

Build and debug Android applications inside Linux on Android using OpenJDK 17, ADB, Fastboot, Gradle, and Git.

openjdk-17-jdk android-sdk-platform-tools gradle
View Installation Logic →
bash — linuxonandroid

ubuntu@android:~$ java -version

openjdk version "17.0.12" 2024-07-16

ubuntu@android:~$ adb devices

List of devices attached

NGINX Web Server & SQLite

Turn your Android phone into a local HTTP web server and embedded database system powered by NGINX and SQLite3.

nginx sqlite3 curl
View Installation Logic →
bash — linuxonandroid

ubuntu@android:~$ service nginx start

* Starting NGINX web server nginx ... [ OK ]

ubuntu@android:~$ curl -I http://localhost

HTTP/1.1 200 OK Server: nginx/1.24.0

OpenSSH Server Daemon

Access your Android Linux environment remotely from your laptop or PC command line over local Wi-Fi or LAN.

openssh-server port 2222
View Installation Logic →
bash — linuxonandroid

ubuntu@android:~$ /usr/sbin/sshd -p 2222

Server listening on port 2222.

user@desktop:~$ ssh ubuntu@192.168.1.50 -p 2222

Welcome to Ubuntu 26.04 LTS (GNU/Linux aarch64)

15 Years of Innovation (2011 – Present)

From early XDA Developers root chroot scripts to a modern 100% rootless Jetpack Compose application.

2011 – 2012

Project Inception on XDA

First created on XDA Developers as the "Ubuntu Installer" and "Complete Linux Installer" project, pioneering chroot-based Linux deployments on early Android devices.

2013 – 2017

LinuxOnAndroid.com & Wide Adoption

Expanded distribution images (Ubuntu, Debian, Fedora, Arch) and custom rootfs image mounting tools hosted on linuxonandroid.com.

2026 Modern Architecture

100% Rootless Jetpack Compose Rebirth

Rebuilt from the ground up: complete rootless operation via PRoot ptrace, POSIX PTY native C++ bridge, Jetpack Compose Material3 UI, and arch-aware mirror automation.

Get Started in 3 Simple Steps

Setting up Linux on your Android phone takes less than 2 minutes.

01

Build or Download APK

Clone the GitHub repository and compile with ./gradlew assembleDebug or download the latest release APK.

View Build Instructions →
02

Run Setup Wizard

Launch the app, select your target architecture, and tap Download & Install RootFS. The app unpacks and configures Ubuntu automatically.

03

Open Terminal & Tools

Navigate to the Terminal tab for interactive shell access or open the Software Hub to launch developer software stacks.