/Termux-Desktops

Collection of scripts to launch Desktops with audio in Termux X11 and how to use hardware acceleration

Primary LanguageShellGNU General Public License v3.0GPL-3.0

Android on Linux: Termux X11 Desktops

Collection of scripts to launch Desktops with audio in Termux X11. You have also all the information needed to install your prefered Linux Distro and connect to it in the following steps.

⚠️ If you want to see the information as it was before the update (as shown in most of the videos) check this out: README_old.md

You can see it all explained on my Youtube channel: LinuxDroidMaster

📚 Index





Linux Environments Preview

All environments are configured with XFCE4 Desktop but you can change it

Proot distro (Debian) Native Chroot (Debian)



🏁 First steps

We are going to use Termux and Termux X11 in order to have a full Linux Desktop in our Android devices.

Basic packages you need to install on Termux:

pkg update
pkg upgrade
pkg install x11-repo
pkg install termux-x11-nightly
pkg install tur-repo
pkg install pulseaudio
pkg install proot-distro
pkg install wget
pkg install git


⚔️ Termux native VS Proot-distro VS Chroot

When setting up Linux on your Android device, you have several options to choose from. Understanding the differences between them can help you decide which environment best suits your needs:

Termux native refers to running Linux commands directly within the Termux app without any additional virtualization or containerization. It provides a lightweight and straightforward way to access Linux utilities on your Android device.

Proot-Distro is a method that utilizes proot (PRoot is a user-space implementation of chroot, mount --bind, and binfmt_misc) to run a full Linux distribution inside a chroot environment. This approach allows you to install and use a wide range of Linux distributions without root access. However, it may have some limitations compared to native installations.

Chroot is a Unix command that changes the apparent root directory for the current running process and its children. In the context of running Linux on Android, chroot is often used to create a separate Linux environment alongside the Android system. While it provides a more isolated environment compared to Termux native, it may require more advanced setup and additional tools.

Summary

  • Termux Native: Simple and lightweight, but with limited capabilities compared to full Linux distributions.
  • Proot-Distro: Allows running full Linux distributions without root access, but may have some limitations.
  • Chroot: Provides a more isolated environment but requires more complex setup and additional tools.

Consider your requirements and preferences when choosing the Linux environment for your Android device.



Comparison of Linux Environments on Android

Feature Proot Native Chroot
Needs Root? ❌ (No) ❌ (No) ✅ (Yes)
Many Linux Apps? ✅ (Yes) ❌ (Limited) ✅ (Yes)
Performance Moderate 💼 Good 🚀 Good 🚀
  • Needs Root?: Indicates whether root access is required for setting up the environment.
  • Many Linux Apps?: Reflects the level of compatibility with various Linux applications.
  • Customization Level: Describes the extent to which the environment can be customized or configured.


🐧 How to install proot distributions: Ubuntu, Debian, Arch, Kali Nethunter, Parrot OS, PostMarket OS

Click on the different icons to see how you can install the distribution of your choice. All of them have a video explaining the process

Ubuntu Debian Arch Kali NetHunter Parrot OS PostMarket
Ubuntu Logo Debian Logo Arch Logo Kali Logo Kali Logo Kali Logo


💀 How to install Chroot distributions: Ubuntu, Debian

Click on the different icons to see how you can install the distribution of your choice. All of them have a video explaining the process

Ubuntu Debian
Ubuntu Logo Debian Logo


💻 How to install Termux Native Desktop

You have all the information to install a native Termux Desktop and all the available apps here.