Project Icon

termux-desktop

将Android手机变身Linux桌面系统

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

LAST Updated : August 2023

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


logo

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 -

Openbox WMAnother Style
desktopdesktop

Lets start from the beginning...

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...

How To install termux?

You can install termux form google play store or from f-droid.

More information about installation is here

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
Android - Android 10 (Q)
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.

  • 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'.

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

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.

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

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 -

desktop

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.

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
项目侧边栏1项目侧边栏2
推荐项目
Project Cover

豆包MarsCode

豆包 MarsCode 是一款革命性的编程助手,通过AI技术提供代码补全、单测生成、代码解释和智能问答等功能,支持100+编程语言,与主流编辑器无缝集成,显著提升开发效率和代码质量。

Project Cover

AI写歌

Suno AI是一个革命性的AI音乐创作平台,能在短短30秒内帮助用户创作出一首完整的歌曲。无论是寻找创作灵感还是需要快速制作音乐,Suno AI都是音乐爱好者和专业人士的理想选择。

Project Cover

白日梦AI

白日梦AI提供专注于AI视频生成的多样化功能,包括文生视频、动态画面和形象生成等,帮助用户快速上手,创造专业级内容。

Project Cover

有言AI

有言平台提供一站式AIGC视频创作解决方案,通过智能技术简化视频制作流程。无论是企业宣传还是个人分享,有言都能帮助用户快速、轻松地制作出专业级别的视频内容。

Project Cover

Kimi

Kimi AI助手提供多语言对话支持,能够阅读和理解用户上传的文件内容,解析网页信息,并结合搜索结果为用户提供详尽的答案。无论是日常咨询还是专业问题,Kimi都能以友好、专业的方式提供帮助。

Project Cover

讯飞绘镜

讯飞绘镜是一个支持从创意到完整视频创作的智能平台,用户可以快速生成视频素材并创作独特的音乐视频和故事。平台提供多样化的主题和精选作品,帮助用户探索创意灵感。

Project Cover

讯飞文书

讯飞文书依托讯飞星火大模型,为文书写作者提供从素材筹备到稿件撰写及审稿的全程支持。通过录音智记和以稿写稿等功能,满足事务性工作的高频需求,帮助撰稿人节省精力,提高效率,优化工作与生活。

Project Cover

阿里绘蛙

绘蛙是阿里巴巴集团推出的革命性AI电商营销平台。利用尖端人工智能技术,为商家提供一键生成商品图和营销文案的服务,显著提升内容创作效率和营销效果。适用于淘宝、天猫等电商平台,让商品第一时间被种草。

Project Cover

AIWritePaper论文写作

AIWritePaper论文写作是一站式AI论文写作辅助工具,简化了选题、文献检索至论文撰写的整个过程。通过简单设定,平台可快速生成高质量论文大纲和全文,配合图表、参考文献等一应俱全,同时提供开题报告和答辩PPT等增值服务,保障数据安全,有效提升写作效率和论文质量。

投诉举报邮箱: service@vectorlightyear.com
@2024 懂AI·鲁ICP备2024100362号-6·鲁公网安备37021002001498号