explaingit

meefik/linuxdeploy

5,835JavaAudience · developerComplexity · 3/5Setup · moderate

TLDR

Android app that installs and runs a full Linux distribution alongside Android on the same device, accessible via SSH terminal or graphical desktop over VNC.

Mindmap

mindmap
  root((linuxdeploy))
    What it does
      Install Linux on Android
      Chroot environment
      Start and stop freely
    Distributions
      Debian and Ubuntu
      Arch and Fedora
      Kali and Alpine
    Access Methods
      SSH terminal
      VNC desktop
      Framebuffer display
    Desktops
      LXDE
      Xfce
      MATE
Click or tap to explore — scroll the page freely

Code map

Detail Auto

An interactive map of this repo's files and how they connect — its source is parsed live in your browser. Click Visualize to build it.

filefunction / class

Things people build with this

USE CASE 1

Run a full Ubuntu or Debian desktop on your Android phone without replacing Android.

USE CASE 2

Access a Linux command-line environment on your phone via SSH for programming or system administration.

USE CASE 3

Test multiple Linux distributions like Arch, Fedora, or Kali on an Android device without extra hardware.

USE CASE 4

Set up a graphical Linux desktop environment like Xfce on Android, viewable through a VNC client.

Tech stack

JavaAndroidchrootSSHVNCX11

Getting it running

Difficulty · moderate Time to first run · 30min

Works best with a rooted Android device, root access unlocks all features.

License information was not mentioned in the explanation.

In plain English

Linux Deploy is an Android app that lets you install and run a full Linux operating system alongside Android on the same device. Instead of replacing Android, it creates a contained Linux environment that runs on top of it, using a technique called chroot. The two systems coexist on the same device, and you can start and stop the Linux system from the app without affecting Android. The app works by creating a disk image file (or using a directory or partition) on the device, then downloading a Linux distribution from official internet mirrors and installing it into that space. Supported distributions include Debian, Ubuntu, Alpine, Arch, Fedora, Kali, and several others. The whole process takes around 15 minutes. The minimum recommended disk image size is about 1 GB if you want a graphical desktop environment, or 512 MB for a command-line-only setup. Once installed, you can access the Linux system through several methods: an SSH terminal for command-line access, VNC for a graphical desktop you view remotely, or direct framebuffer and X11 display modes. Supported desktop environments include LXDE, Xfce, and MATE, among others. Passwords for SSH and VNC are generated automatically on first setup and can be changed later. The app works best with root access on the Android device, though it can run without it in some configurations. All changes are reversible: uninstalling the app and its components removes the Linux system completely. The app is available on Google Play or as a direct APK download from GitHub. The README also includes a performance section with read and write speed measurements for different file systems on an older Samsung device, and installation time estimates for different desktop environment choices.

Copy-paste prompts

Prompt 1
I installed Linux Deploy on my Android phone and set up Ubuntu. How do I connect to it via SSH from my laptop on the same Wi-Fi network?
Prompt 2
Linux Deploy keeps failing during installation with a 1GB Debian disk image. What are the most common causes and how do I fix them?
Prompt 3
How do I install and run a graphical desktop environment like Xfce on Linux Deploy, and what VNC app should I use to view it on Android?
Prompt 4
Can I use Linux Deploy without root on my Android device? What features are limited without root access?
Open on GitHub → Explain another repo

← meefik on gitmyhub — every repo by this author, as a profile.

Verify against the repo before relying on details.