Proot: Security Distros (Kali & Parrot)
Relevant source files
The following files were used as context for generating this wiki page:
The Termux-Desktops project facilitates the installation and execution of security-focused Linux distributions, specifically Kali Linux NetHunter and Parrot OS, on Android devices. This is achieved through proot, a user-space implementation of chroot that intercepts system calls to run programs in a different root directory without requiring administrative (root) access to the Android system. Sources: README.md:46-51, Documentation/terminology.md:14-16
These security distributions are integrated with Termux X11 and PulseAudio to provide a full desktop environment (typically XFCE4) with functional audio and graphical output. This setup allows users to utilize specialized security tools and penetration testing environments directly on mobile hardware. Sources: README.md:1-5, Documentation/proot/kalinethunter_proot.md:20-25
System Architecture
The architecture relies on Termux as the host environment, which manages the proot container. The graphical interface is handled by the Termux:X11 application, and audio is routed through a PulseAudio server running within Termux.
The diagram above illustrates the relationship between the Android host, the Termux environment, and the containerized security distributions. Sources: README.md:31-39, Documentation/proot/kalinethunter_proot.md:20-25, Documentation/proot/parrotos_proot.md:16-21
Kali Linux NetHunter
Kali NetHunter in this project is implemented as a "rootless" installation. It requires specific manual modifications to the launch environment to ensure compatibility with Termux's temporary directory structures. Sources: Documentation/proot/kalinethunter_proot.md:27-33
Installation and Configuration
The installation involves fetching the official NetHunter Termux install script and configuring the environment. A critical configuration step involves modifying the nh binary (NetHunter's entry point) to bind the Termux temporary directory to the container's /tmp. Sources: Documentation/proot/kalinethunter_proot.md:30-33, Documentation/proot/kalinethunter_proot.md:47-50
| Configuration Item | Value/Path | Purpose |
|---|---|---|
| Prerequisite Packages | x11-repo, termux-x11-nightly, pulseaudio, proot-distro | Core utilities for GUI and audio |
| Install Script | https://offs.ec/2MceZWr | Official Kali NetHunter rootless installer |
| Binary Modification | $PREFIX/bin/nh | Adding bind mount for /tmp |
| Desktop Script | startxfce4_nethunter.sh | Launches XFCE desktop environment |
Sources: Documentation/proot/kalinethunter_proot.md:20-25, Documentation/proot/kalinethunter_proot.md:47-75
Critical Path: nh Binary Modification
To enable the desktop script startxfce4_nethunter.sh to function correctly, the following bind mount must be manually added to the cmdline section of the NetHunter launcher:
-b /data/data/com.termux/files/usr/tmp:/tmp \
Sources: Documentation/proot/kalinethunter_proot.md:50-55
Parrot OS
Parrot OS is integrated via a custom setup script and provides various installation tiers, ranging from minimal CLI environments to fully customized desktop environments. Sources: Documentation/proot/parrotos_proot.md:24-30
Deployment Workflow
The deployment of Parrot OS involves cloning a specific GUI repository and executing the setup scripts provided by the project.
This sequence shows the progression from repository cloning to the final execution of the desktop environment. Sources: Documentation/proot/parrotos_proot.md:24-34
Available Distributions and Tools
Parrot OS allows for granular tool installation through its package manager. Users can search for specific security toolsets:
sudo apt search parrot-tool: Lists available security packages.sudo apt install parrot-tools-web: Example of installing a specific toolset.apt install parrot-desktop-mate: Recommended for full icon and theme customization within XFCE4.
Sources: Documentation/proot/parrotos_proot.md:41-52
Pre-configured Backups
To simplify deployment, the project provides pre-configured backups via external storage services (MEGA/MediaFire).
| Backup Type | Size | Features |
|---|---|---|
| Customized | ~5GB | Fully updated, "Hack The Box" (HTB) customization |
| Minimal | ~2.7GB | Basic XFCE4 installation, no specific customization |
Sources: Documentation/proot/parrotos_proot.md:63-75
Execution Environment Comparison
Both distributions utilize proot, which has performance and compatibility implications compared to native or chroot methods. Sources: README.md:71-77
| Feature | Proot Security Distros |
|---|---|
| Root Required | No (❌) |
| Compatibility | High (Most Linux apps run) |
| Performance | Moderate |
| Isolation | User-space container |
Sources: README.md:68-75, Documentation/terminology.md:14-16
Summary
The Proot-based security distributions (Kali and Parrot) provide a portable penetration testing environment on Android. By utilizing proot-distro and specialized launch scripts, the project overcomes Android's filesystem restrictions to run standard Linux binaries and desktop environments. Kali NetHunter focuses on a rootless implementation of its official mobile platform, while Parrot OS provides flexible tiers of installation and pre-configured backups for rapid deployment. Sources: README.md:1-10, Documentation/proot/kalinethunter_proot.md:5-10, Documentation/proot/parrotos_proot.md:10-14