Skip to content

Install a full Linux desktop environment on your Android device with Termux X11 ( VNC optional) and also enable hardware acceleration

License

Notifications You must be signed in to change notification settings

sabamdarif/termux-desktop

Repository files navigation

Termux Desktop

Easily Install Termux GUI Desktop

GitHub stars GitHub forks GitHub issues GitHub repo size GitHub License


Key Features:

  • 📚 Easy Setup: Easy-to-follow installation process
  • 🖥️ Desktop Styles: Supports Xfce, LXQt, and Openbox... others with beautiful themes
  • 🦾 Hardware Acceleration: It will install all the drivers in order to get hardware acceleration working under termux
  • 🖇️ GUI Access:
    • Termux:X11 (Default)
    • VNC (vnc is optional and only available via the custom install section)
  • 📦 Package Management:
    • APT (Termux's default and recommended)
    • PACMAN (pacman may be buggy, not well tested)
  • 🛍️ App Store: A appstore to install apps
  • 📦 Container It lets you use a proot/chroot distro as a container to install more apps than Termux normally supports
  • And a lot more, just chose the custom install option during the setup and see what you can do

Quick Navigation

📦 Distro Containers • 🦾 Hardware Acceleration • 🍷Wine • 💡 Others


Getting Started:

1. Ensure Requirements Are Met:

Note

This Only Works On Termux From Github Or Fdroid. Avoid using Termux from Google Play that doesn't work due to API limitations.

2. Explore Desktop Styles:
3. Currently supported Desktop Environments and Window Managers:
Desktop Environments Window Managers
Xfce Openbox
LXQt i3
MATE dwm
GNOME bspwm
Awesome
Fluxbox
IceWM
4. Hardware Acceleration and Distro Container:
5. Start Installation:

Full Installation YouTube Video Guide:- Here

Important

Fresh installations are recommended for best results.
If you are in android 12 or higher then first disable Phantom Process Killer Guide:- Here

curl -Lf https://raw.githubusercontent.com/sabamdarif/termux-desktop/main/setup-termux-desktop -o setup-termux-desktop && chmod +x setup-termux-desktop && ./setup-termux-desktop
  • You can also do a lite install which will not install all the optional packages to do that run the install this LITE=true ./setup-termux-desktop or LITE=1 ./setup-termux-desktop instead of just running ./setup-termux-desktop
6. Usage Instructions:
  • Commands for starting and stopping Termux:X11 and VNC sessions are provided below.

Command Reference:

Start Termux:X11

tx11start [options]

Options:

  • --nogpu: Disable GPU acceleration.
  • --legacy: Enable legacy drawing.
  • --nodbus: Disable DBus.
  • Combine options for specific configurations (e.g., tx11start --nogpu --legacy).
  • --help: To show help.
Full Example:
  • tx11start to star Termux:11 with gpu acceleration
  • tx11start --nogpu to star Termux:11 without gpu acceleration
  • tx11start --nogpu --legacy to star Termux:11 without gpu acceleration and -legacy-drawing
  • tx11start --nodbus to star Termux:11 without dbus
  • tx11start --nodbus --nogpu to star Termux:11 without gpu acceleration and dbus
  • tx11start --nodbus --nogpu --legacy to star Termux:11 without gpu acceleration and dbus and with -legacy-drawing
  • tx11start --nodbus --legacy to star Termux:11 without dbus and use -legacy-drawing (nodbus and gpu)
  • tx11start --legacy to star Termux:11 with -legacy-drawing (with dbus and gpu)
  • tx11start --debug --OTHER-PARAMETERS To see log of that commmand

    tx11start --debug --nogpu To See tx11start --nogpu's log

Stop Termux:X11

tx11stop [-f]

Options:

  • -f: Force stop.
  • --help: To show help.

Start VNC

vncstart [options]

Options:

  • --nogpu: Disable GPU acceleration.
  • --help: To show help.

Stop VNC

vncstop [-f]

Options:

  • -f: Force stop.
  • --help: To show help.

GUI Commands

gui [options]

Options:

  • --start: Start GUI (use vnc or tx11 as arguments).
  • --display To launch the current desktop environment on another x11 display server over the same network
  • --stop: Stop GUI.
  • --kill: Stop all GUI sessions.
  • --help: To show help.
Full Example:
If you select only one of them to access gui
  • gui --start / gui -l to start Termux gui
  • gui --stop / gui -s to stop gui
  • gui --display / gui -d <IP_ADDRESS>:<DISPLAY_PORT> To launch the current desktop environment on another x11 display server over the same network
If you select both for gui access
  • gui -l / --start vnc to start VNC
  • gui -l / --start tx11 to start Termux:X11
  • gui -s / --stop vnc to stop VNC
  • gui -s / --stop tx11 to stop Termux:X11
  • gui -k / --kill / -kill to kill both vncserver and Termux:x11 At Once
  • gui --display / gui -d <IP_ADDRESS>:<DISPLAY_PORT> To launch the current desktop environment on another x11 display server over the same network
    • for more click :- Here

Setup Commands

setup-termux-desktop [options]

Options:

  • --change style: Change desktop style.
  • --change hw: Modify hardware acceleration settings.
  • --reset: Reset all changes.
  • --remove: Uninstall Termux Desktop.
  • --local-config Start the installation from pre made config file
  • --help: To show help.
Full Example:
  • setup-termux-desktop --change style To Change Desktop Style
  • setup-termux-desktop --change hw To Change Hardware Acceleration Method
  • setup-termux-desktop --change pd To Change Installed Proot-Distro
  • setup-termux-desktop --change autostart To change autostart behaviour
  • setup-termux-desktop --change display To change termux:x11 display port

  • setup-termux-desktop --reinstall icons / themes /config To Reinstall Icons / Themes / Config
  • setup-termux-desktop --reinstall icons,themes,..etc To Reinstall Them At Once

  • setup-termux-desktop --reset To Reset All Changes Made By This Script Without Uninstalling The Packages

  • setup-termux-desktop --remove / -r To Remove Termux Desktop

  • setup-termux-desktop --local-config / -config Start the installation from pre made config file

    Each time you install the desktop environment or made some changes using the script it write all your config to the /data/data/com.termux/files/usr/etc/termux-desktop/configuration.conf file. Copy that somewhere else, so next time when you want to install the desktop environment with that old config all you have to do setup-termux-desktop --local-config /path/to/configuration.conf


  • setup-termux-desktop --debug (At The Start) To generate a log file for any of the above command

    • setup-termux-desktop --debug --install To create a log of whole installation process

Screenshots:

Demo Looks

XFCE LXQT
img img
OPENBOX MATE
img img

App Store:

Appstore UI:
Loading Installing
img img
Installed Prompt
img img

Associated Repos:


License

This project is licensed under the GNU General Public License v3.0.


Acknowledgments:

Special thanks to:


If you enjoy this project, consider giving it a star! 🌟


Support the Project

If you find Termux Desktop useful and would like to support its development, consider buying me a coffee! Your support helps me maintain and improve this project.

  • USDT (BEP20,ERC20):- 0x1d216cf986d95491a479ffe5415dff18dded7e71
  • USDT (TRC20):- TCjRKPLG4BgNdHibt2yeAwgaBZVB4JoPaD
  • BTC:- 13Q7xf3qZ9xH81rS2gev8N4vD92L9wYiKH
  • DOGE (dogecoin):- DJkMCnBAFG14TV3BqZKmbbjD8Pi1zKLLG6
  • ETH (ERC20):- 0x1d216cf986d95491a479ffe5415dff18dded7e71

Every contribution, no matter how small, helps keep this project alive and growing! ❤️


Join the conversation: Telegram Chat.