termux-desktop

termux-desktop

将Android手机变身Linux桌面系统

termux-desktop项目让Android设备秒变Linux桌面系统。通过精选配置文件和脚本,用户可轻松搭建图形化环境,支持多种主题风格。预装文件管理器、编辑器等常用软件,VNC远程连接即可使用。从编程学习到复古游戏,打造多功能移动工作站。

TermuxAndroidLinux环境图形界面开源软件Github开源项目

LAST Updated : August 2023

Unmaintained : Due to Termux not working properly on new Android versions and also Termux not getting maintained properly.


logo <br />

<p align="center"> <img src="https://img.shields.io/badge/Maintained%3F-No-red?style=for-the-badge"> <img src="https://img.shields.io/github/license/adi1090x/termux-desktop?style=for-the-badge"> <img src="https://img.shields.io/github/issues/adi1090x/termux-desktop?color=violet&style=for-the-badge"> <img src="https://img.shields.io/github/forks/adi1090x/termux-desktop?color=teal&style=for-the-badge"> <img src="https://img.shields.io/github/stars/adi1090x/termux-desktop?style=for-the-badge"> </p>

Alright, Lets just get this straight, these are just some dotfiles & scripts, which will help you to setup a graphical environment in termux. I've tried to make it as easy as possible to setup a beautiful linux desktop on your android device with termux, So follow the steps and you'll end up making it look like this - <br />

Openbox WMAnother Style
desktopdesktop

Lets start from the beginning... <br />

What is termux?

Termux is an Android terminal emulator and Linux environment app that works directly with no rooting or setup required. A minimal base system is installed automatically - additional packages are available using the PKG/APT package manager. More Here... <br />

How To install termux?

You can install termux form google play store or from f-droid. <br />

More information about installation is here <br />

Preparation

Install Termux & Termux:API on your phone. It's recommended to install Termux API application as many desktop elements are dependent on it.

This setup is created and tested on :

Device - Redmi Note 9 Pro <br /> Android - Android 10 (Q) <br /> CPU Type - aarch64

Installation

After installing both applications above, open Termux and follow the steps below -

  • Update termux packages and install git
pkg upgrade && pkg install git
  • Clone this repository
git clone --depth=1 https://github.com/adi1090x/termux-desktop.git

Warning : I'm assuming that you're doing this on a fresh termux install. If not, I'll suggest you to do so. However the setup.sh script backup every file it replace, It's still recommended that you manually backup your files in order to avoid conflicts. <br />

  • Change to cloned directory and run setup.sh with --install option
cd termux-desktop
chmod +x setup.sh
./setup.sh --install

If script setup.sh fails during package installation (due to network issues), you can re-execute it again.

  • During installation, you'll be asked to set up password for VNC -
[*] Setting up VNC Server...

You will require a password to access your desktops.

Password:
Verify:
Would you like to enter a view-only password (y/n)? n

Note that passwords are not visible when you are typing them and minimum password length is 6 characters. Remember the password you typed as it'll be required to connect via vnc client.

  • If everything is okay, you will see this message -
New 'localhost:1 ()' desktop is localhost:1

Creating default startup script /data/data/com.termux/files/home/.vnc/xstartup
Creating default config /data/data/com.termux/files/home/.vnc/config
Starting applications specified in /data/data/com.termux/files/home/.vnc/xstartup
Log file is /data/data/com.termux/files/home/.vnc/localhost:1.log

[*] Server Is Running...

TigerVNC server sessions:

X DISPLAY #     PROCESS ID
:1              XXXXX

It means that X (vnc) server is available on display 'localhost:1'. <br />

That's it. Termux Desktop is installed successfully. Restart Termux and enter startdesktop command to start vncserver and connect via VNC Client. <br />

startdesktop

[*] Starting VNC Server...

New 'localhost:1 ()' desktop is localhost:1

Starting applications specified in /data/data/com.termux/files/home/.vnc/xstartup
Log file is /data/data/com.termux/files/home/.vnc/localhost:1.log

Uninstallation

If you ever want to uninstall Termux Desktop, just run setup.sh with --uninstall option. Just keep the setup.sh script and delete the cloned repository to save space. I'll create a separate uninstaller script later. The command below will remove all the packages and delete all the config files it installed, including the changes you've made. So, Be careful there...

./setup.sh --uninstall

VNC Client

Now you need a VNC client app to connect to server. I'm using this Android VNC client: VNC Viewer. You can use TigerVNC if you're trying to connect to server by a computer (Windows or Linux).

Determine port number on which VNC server listens. It can be calculated like this: 5900 + {display number}. So for display 'localhost:1' the port will be 5901. <br />

Now open the VNC Viewer application and create a new connection with the following information (assuming that port is 5901) - <br />

Address:
127.0.0.1:5901

Name:
Termux

Now launch it. You will be prompted for password that you entered during installation. After entering password, you'll be headed directly to this desktop - <br />

desktop <br />

First Impression

Let's take a look at following installed programs you'll get here -

File ManagerText Editor/IDE
imgimg
Terminal EmulatorWeb Browser
imgimg
Openbox MenuMany CLI based Programs
imgimg
vim & htopranger & calcursemutt & elinksmpd & ncmpcpp
imgimgimgimg

Rofi Application launcher and Applets -

App LauncherMusic Player
imgimg
Battery StatusExit MenuNetwork Info
imgimgimg

Styles

There are total Eight different styles/themes available in this setup. To change style, Right click on desktop > Preferences > Change Style and select the one you want to apply.

DefaultBeachForestGrid
imgimgimgimg
ManhattanSlimeSparkWave
imgimgimgimg

Applications of Termux Desktop

Well, These are some ideas or things you can do with termux desktop. From Learning coding to Penetration testing, Chatting over IRC to Browsing web and Downloading file, Playing classic retro games to run Windows from 90s.

  • Learn and practice you coding skill without having a laptop
PythonBash
imgimg
  • Chatting, Web Browsing and Downloading files
Hexchat & PidginNetsurf & UgetBrowsing Wiki
imgimgimg
  • Penetration testing and Learn cyber security stuff

I'm not doing anything illegal or sponsoring any kind of Hacking and Cracking. Termux is a powerful tool, use it with responsibilities. <br />

Metasploit - Sherlock - Socialfish - Zphisher - Sqlmap
img
  • Play classic retro games or Run Microsoft Windows from 90s with Dosbox
Turbo C++, Windows 1 and Windows 3Duke and Blue Brothers
imgimg
Mario and PacmanPrince of Persia (both)
imgimg
Wolfenstein and Turrican2SuperKarts and Spiderman
imgimg

You'll probably get the idea of possible things you can do with Termux and how Termux Desktop makes it more easy.

Keybindings

Here's some shortcut keys you want to use to speed up your work. For more, Right click on desktop > Keybinds

KeysAction-----KeysAction
W-1Go To Desktop 1S-W-1Send To Desktop 1
W-2Go To Desktop 2S-W-2Send To Desktop 2
W-3Go To Desktop 3S-W-3Send To Desktop 3
W-4Go To Desktop 4S-W-4Send To Desktop 4
W-5Go To Desktop 5S-W-5Send To Desktop 5
W-S-LeftSend To Prev DesktopW-S-RightSend To Next Desktop
A-TabNext Window (Current Workspace)W-TabNext Window (All Workspaces)
W-hMove to TopLeftW-jMove to BottomLeft
W-kMove to TopRightW-lMove to BottomRight
W-LeftMove To Left EdgeW-RightMove To Right Edge
W-UpMaximizedW-DownUnmaximized
W-q/cClose WindowsA-r/mToggle Resize/Move
W-SpaceOpenbox MenuW-p/A-F1App Launcher
W-dToggle DesktopW-vSet Tasks
W-fFile ManagerW-eText Editor
W-t/returnTerminalW-wWeb Browser
W-xExit MenuW-mMusic Menu
W-bBattery MenuW-nNetwork Menu
C-A-vVimC-A-rRanger
C-A-hHtopC-A-nNano

Additional Tools

You can install additional tools for termux, to make it visually look good.

  1. Oh my zsh, Setup zsh with oh-my-zsh framework. (Already Added in this setup)
  2. Termux style, Change color and fonts in termux.

FYI

  • If you face any problem or get any error, you can create an issue & i'll try to help.
  • Edit ~/.local/bin/email and put your Email ID and Password (Use an App password) to show unread mails on polybar.
  • You may need to edit some config files accoring to your need (~/.mutt/muttrc, ~/.gitconfig)
  • Don't Email or DM me to ask how to hack, I ain't a Hacker.
  • Have Fun, Share this repository with your

编辑推荐精选

Sora2视频免费生成

Sora2视频免费生成

最新版Sora2模型免费使用,一键生成无水印视频

最新版Sora2模型免费使用,一键生成无水印视频

Transly

Transly

实时语音翻译/同声传译工具

Transly是一个多场景的AI大语言模型驱动的同声传译、专业翻译助手,它拥有超精准的音频识别翻译能力,几乎零延迟的使用体验和支持多国语言可以让你带它走遍全球,无论你是留学生、商务人士、韩剧美剧爱好者,还是出国游玩、多国会议、跨国追星等等,都可以满足你所有需要同传的场景需求,线上线下通用,扫除语言障碍,让全世界的语言交流不再有国界。

讯飞绘文

讯飞绘文

选题、配图、成文,一站式创作,让内容运营更高效

讯飞绘文,一个AI集成平台,支持写作、选题、配图、排版和发布。高效生成适用于各类媒体的定制内容,加速品牌传播,提升内容营销效果。

热门AI辅助写作AI工具讯飞绘文内容运营AI创作个性化文章多平台分发AI助手
TRAE编程

TRAE编程

AI辅助编程,代码自动修复

Trae是一种自适应的集成开发环境(IDE),通过自动化和多元协作改变开发流程。利用Trae,团队能够更快速、精确地编写和部署代码,从而提高编程效率和项目交付速度。Trae具备上下文感知和代码自动完成功能,是提升开发效率的理想工具。

AI工具TraeAI IDE协作生产力转型热门
商汤小浣熊

商汤小浣熊

最强AI数据分析助手

小浣熊家族Raccoon,您的AI智能助手,致力于通过先进的人工智能技术,为用户提供高效、便捷的智能服务。无论是日常咨询还是专业问题解答,小浣熊都能以快速、准确的响应满足您的需求,让您的生活更加智能便捷。

imini AI

imini AI

像人一样思考的AI智能体

imini 是一款超级AI智能体,能根据人类指令,自主思考、自主完成、并且交付结果的AI智能体。

Keevx

Keevx

AI数字人视频创作平台

Keevx 一款开箱即用的AI数字人视频创作平台,广泛适用于电商广告、企业培训与社媒宣传,让全球企业与个人创作者无需拍摄剪辑,就能快速生成多语言、高质量的专业视频。

即梦AI

即梦AI

一站式AI创作平台

提供 AI 驱动的图片、视频生成及数字人等功能,助力创意创作

扣子-AI办公

扣子-AI办公

AI办公助手,复杂任务高效处理

AI办公助手,复杂任务高效处理。办公效率低?扣子空间AI助手支持播客生成、PPT制作、网页开发及报告写作,覆盖科研、商业、舆情等领域的专家Agent 7x24小时响应,生活工作无缝切换,提升50%效率!

蛙蛙写作

蛙蛙写作

AI小说写作助手,一站式润色、改写、扩写

蛙蛙写作—国内先进的AI写作平台,涵盖小说、学术、社交媒体等多场景。提供续写、改写、润色等功能,助力创作者高效优化写作流程。界面简洁,功能全面,适合各类写作者提升内容品质和工作效率。

AI辅助写作AI工具蛙蛙写作AI写作工具学术助手办公助手营销助手AI助手
下拉加载更多