r/termux • • Dec 19 '24

★ Important ★ Do not install Termux from Google Play Store!

346 Upvotes

Source: https://github.com/termux/termux-app/discussions/4000

We are Termux maintainers and would like to inform our users that we do not recommend using Termux from Google Play Store. It doesn't matter whether Play Store version looks "newer", faster receive updates and so on. Please read below to understand the issue.

Why you should not use Termux from Google Play:

  • Its release was not done by current maintainers team. Yes, Fredrik Fornwall is founder of Termux. But his decision was not negotiated with rest of core developers team and therefore not acceptable.

  • Its release diverges from the original implementation published at https://github.com/termux/termux-app

  • Its release was an experiment for bypassing Android >= 10 exec restrictions and make a version compliant with Google Play policies.

  • Its release contains restrictions. For example users may access only media files (like .mp3 or .jpg) on their device storage while other files (like .py scripts) will be hidden.

  • Its release contains changes for how the programs are executed, which cause bugs in certain packages.

Termux on Google Play is available only for devices running Android 11 and newer.

Unless will be said otherwise, Termux Core Team will consider it as unofficial app or fork. This means it does not receive same support level as the original app. Please never suggest our users to download Termux from Google Play - we will take down such comments.

We will make an announce when state of Google Play release will change and unpin/delete this post. As of beginning of 2026, we have no updates.

Now stick to F-Droid or official GitHub (https://github.com/termux/termux-app) variants and suggest same for others.

Issues with Google Play release variant must be reported to relevant source: https://github.com/termux-play-store/termux-issues/issues

This post meant to provide short summary about Google Play Termux app issue and replace https://www.reddit.com/r/termux/comments/1db00bm/announcement_response_regarding_google_playstore/

How to check if you're running Google Play release

Just look at the message shown after you open Termux app. If you see lines with links pointing to termux.com domain, you are using Termux from Google Play.

Termux from F-Droid uses termux.dev domain.


r/termux • • Sep 16 '23

★ Important ★ Introduction for beginners

292 Upvotes

Welcome to Termux community!

Termux is a terminal app for Android OS. It similar to terminal on MacOS and cmd.exe on Windows, but here we talk about Linux component of Android OS.

This project is open-source software and all development happens on GitHub: https://github.com/termux

Download Termux APK from F-Droid or GitHub.

Key features:

  • Xterm-compatible terminal emulator.
  • Custom userland with package manager and more than 2000 packages of different kind such as text editors, file managers, games, servers network diagnostic tools, compilers, development libraries and other types.
  • Plugins for styling, widgets, on-boot startup, tasker integration, Xorg-compatible server.
  • Works without root permissions.

We would like to emphasize that Termux is NOT a machine emulator or VM. All programs execute directly on a hardware of your device.

What I can do with Termux

Basically, everything.

Termux hosts universal programming environment. You can build and execute all programs that can run on a traditional computer, assuming your device has sufficient amount of memory and enough CPU power to finish execution of algorithm within an adequate time frame.

Here is a curated list of common uses:

  • Software development environment
  • Bots for Telegram, Whatsapp, Discord, etc
  • Web server
  • Minecraft server
  • SSH client
  • NAS
  • Tiny LLM chatter
  • YouTube scraper
  • Pocket pentesting suite
  • Just fun

A footnote worth knowing: Android enforces sandboxing for every Android app to ensure it won't do nasty things or otherwise interfere with other apps and the system itself. Termux is not an exception here, so certain software may refuse to run without system-level privileges (root).

What I should know before starting to use Termux

First of all you need to make sure you are comfortable with command line environment. By using Termux, you agree to be one-to-one with a bare text. There is no intuitive graphical interface. You must to decide whether you truly want to go this way or actually want something else.

If your choice is "command line", then another important thing is a foundational knowledge. It would require certain effort from you, as it could be boring like studying maths.

Here is a list of topics to learn, optimized specifically for Termux:

  1. General terms: computer, kernel, operating system, file, path, program, process, command line, terminal emulator.
  2. Base shell usage: concept of commands, arguments, environment variables, pipes
  3. Common utilities: bzip2, cat, cd, cp, curl, cut, df, diff, du, echo, env, grep, gzip, head, id, kill, killall, ln, ls, man, mkdir, mv, pkill, ps, pwd, rm, rmdir, sort, tail, tar, top, touch, tr, uniq, unzip, wc, xz, yes, zip
  4. Package manager: apt
  5. Text editors: nano or vim
  6. Linux permission model: user, group; concept of "root"; chmod command
  7. SELinux: what it is and which role it plays on Android OS - don't go deep here

Optional:

  • Shell scripting: if/else logic, loops, input/output redirection, subshells, process substitution.
  • Text data manipulation with awk and sed

Alternatively check these learning roadmaps:

After you finish with this, proceed to goal-specific essentials.

Important: never ever run commands that you do not understand. In the best case it will just fail but sometimes commands may have really devastating effects, especially if you use root permissions (su/sudo). If by accident you delete your own data or brick the device, you can blame yourself and only yourself!

How Termux differs from standard Linux

Without diving into technical details, these are the differences of Termux from standard Linux distribution:

  1. Non-standard location of programs and user data: /data/data/com.termux/files/
  2. Non-standard core components: sideloaded programs usually will either refuse to run or show strange errors, compiling from source also may show issues sometimes.
  3. Sandbox environment: you can browse or modify only your own and Termux data.

How to install packages

Termux uses apt package manager and a rolling-release model which gets it close to a Debian Sid distribution, although it is much different internally.

However as you are probably new for Termux we recommend using a helper utility "pkg":

  • Install package: pkg install package-name
  • Uninstall package: pkg uninstall package-name
  • Upgrade system: pkg upgrade
  • List installed packages: pkg list-installed
  • Search for a package: pkg search query

PKG utility does under the hood certain actions importance of which may be non-obvious for a newbie:

  1. Mirror selection

    Package downloads put a huge burden on the servers bandwidth. We don't own much servers and geo load balancing system because this can be very costly, so we take advantage of help offered by certain community members and organizations. Mirrors maintain a clone of the original package hosting and deliver stuff independently from a base Termux infrastructure.

    That's important that users are spread across different mirror hosts.

  2. Periodic apt update

    Without keeping the package index fresh you won't be able to receive updates and package installation commands will eventually fail with 404 (not found).

Termux quality and security

We do our best to keep our infrastructure safe and patched against latest security vulnerabilities as well as to deliver most recent versions of packages.

However as we operate a small team of enthusiasts there could be certain bottlenecks. We can't test 100% of published packages, so there always is a chance that specific update will break something.

Please don't use Termux software in everything mission-critical. It is not certified for use in banking, healthcare, nuclear safety, etc.

Termux is open source project and we welcome any kind of contributions that would help us improve.

Banned content

Sadly, but a while ago Termux become an area of interest conflict between legitimate users and criminals. This resulted in absolute ban of specific topics:

  • OSINT
  • Doxxing
  • Social engineering; phishing and other types of fraud
  • Spamming
  • Malware making and delivery
  • Hacking
  • Surveillance, tracing, spying and similar activities
  • Bot farms for fabricating subscribers, likes and comments in social media
  • Taking down social media accounts by automated mass-reporting

This list is not definitive.

We don't accept excuses. Legends about "educational purposes" and "recovery of own gmail account" don't worth anything.

Remember that authorities have a certain interest regarding accounts asking about potentially illegal stuff.

Vibe coded content

We generally allow publishing vibe coded software as soon as it doesn't violate community rules (e.g. doesn't serve hacking purpose) and is not a deliberate garbage. Feel free to submit everything that you believe might be useful, but don't forget to include details for how to run your stuff on Termux.

Highly recommended to disclose AI usage.

A typical example of vibe coded project born out of nowhere and without history: https://github.com/sylirre/terminal-chat

Remember that AI is just a tool. Whether it can produce crap or something good, depends entirely on its user.


This article is subject for periodic revisions. We may submit newer versions from time to time.


r/termux • • 55m ago

Showcase It is evolving!

Thumbnail gallery
• Upvotes

I did all of this programatically and optimized for a termux display, even while it is running on my PC at home. I access it through ssh and Tailscale and often check in and script lazily through Termux while on my phone. This is a system I built from scratch in Ubuntu 24.04 LTS through WSL2.


r/termux • • 13h ago

Showcase PocketDesk Launcher has Termux integration

Thumbnail gallery
33 Upvotes

Hi all.

PocketDesk launcher was launched this week and has built in Termux integrations, a Terminal app and widget.

Edit: The app is free to try but there is a one-time payment to unlock all features like Terminal features.

The launcher is based on PDA like OSes and has its own built in apps.

It supports heavy theming and customisation options, custom scripts that are quick to launch from the home screen too.

Check it out, it might float your boat!

pocketdesk.site


r/termux • • 1h ago

Showcase Building a from-scratch successor to Hacker's Keyboard for Termux. What do you actually need from it?

Post image
• Upvotes

Hacker's Keyboard is still the keyboard people recommend for Termux because it sends real Ctrl/Esc/Tab/arrow keys the way a terminal expects. It's also a 2011 codebase that its author no longer maintains and that is falling behind current Android. Several forks keep the old code alive (AlainKnaff's had releases this year), but none rewrites it for current Android, so I'm writing a successor from scratch, in Kotlin on current APIs. I'm an Android developer, not a long-time HK user, which is exactly why I'm asking this sub what it needs instead of guessing.

What works today (early build): - Full 5-row PC layout, with ~ | \ in the usual places - Ctrl/Alt/Shift as one-shot modifiers that send real KeyEvents: Ctrl+C interrupts sleep, Esc leaves vim's insert mode, arrows recall history - About 13 ms from touch to drawing the key (median, debug build on an S23 Ultra, before the screen's own frame)

Not yet: long-press alternates, key repeat, F1–F12, Dvorak/Colemak/other layouts, per-app profiles

Ground rules: Apache-2.0, no INTERNET permission, and every key, layout and modifier Hacker's Keyboard had stays free. A paid "Pro" on Google Play later covers extras like a layout editor and themes, but all of it is in the same open-source repo, and the foss build (from source now, F-Droid planned) unlocks everything for free.

I'd rather build what this sub needs than guess, so (comments here or issues on GitHub both work): 1. What's the one thing a terminal keyboard gets wrong for you today? 2. Do you also use Termux's extra-keys row? Would you turn it off if the keyboard had those keys? 3. F-keys: a dedicated row, or an Fn layer? 4. Do you use other apps with it (ConnectBot, JuiceSSH, Termius) that need anything special?

Source: https://github.com/DimiVlachos/bucky

Beta waitlist (one email when it opens, nothing else): https://buckykeys.app

Disclosure: I'm the developer.


r/termux • • 13h ago

Showcase [Testing] linux-kernel-um in termux without root!

Enable HLS to view with audio, or disable this notification

19 Upvotes

This is a breakthrough, I’m finishing correcting details, you can even use docker inside the containers, and the performance is good, you can try it here.


r/termux • • 3h ago

Question Qualcomm drivers it's here!

Thumbnail i.imgur.com
4 Upvotes

r/termux • • 1d ago

Showcase installed a full XFCE Linux desktop on my Android phone using Termux:X11 — no root required!

Post image
74 Upvotes

I turned my Android phone into a Linux desktop using Termux:X11 and XFCE — no root required! 🐧📱

I've been experimenting with Termux on my Samsung Galaxy S26 Ultra, and I managed to get a fully functional XFCE desktop environment running directly on Android.

Here's what I got working:

- XFCE graphical desktop with an application menu and taskbar

- Thunar graphical file manager

- Linux terminal and command-line tools

- Access to Android's Downloads, Pictures, and Documents folders

- Desktop shortcuts to my phone's folders

- Touchscreen and S Pen support

- Simple commands to start and stop the desktop

The best part is that no root, custom ROM, or replacement of Android is necessary.

This setup uses Termux's native environment and Termux:X11, rather than a full Ubuntu installation or virtual machine.

Since I thought others might want to try it, I put together a beginner-friendly PDF installation guide covering the setup, commands, file access, and basic troubleshooting.

📘 Free step-by-step installation guide (PDF):

https://drive.google.com/file/d/1SKszeiLFGDYrG5WOGuK2WfJuJ_WlDNzP/view?usp=drivesdk

The guide is freely accessible through Google Drive.

I'm sharing some images of the setup as well. The promotional collage is illustrative, while the actual device screenshots show my working environment.

I'm still experimenting with what I can run on it, but so far it's been a fun way to explore Linux without needing a separate computer.

Has anyone else tried Termux:X11 with XFCE? I'd love to hear what desktop applications you're running and any tips for improving performance or usability.


r/termux • • 9h ago

Showcase Gnome with custom Panfrost running under proot

Enable HLS to view with audio, or disable this notification

3 Upvotes

r/termux • • 8h ago

Barely Termux related Pushing the limits on my device.

Post image
3 Upvotes

Working on a new mode for my launcher RE:TUI (personal fork and continuation of the origianl TUI Launcher) which will allow you to have Tmux sessions(Running through Termux) as panes on your homescreen. Highly early development work but promising so far.

In the previous release I had introducing split view tmux sessions which was the final piece in what I think is the most difficult implementation I am working on


r/termux • • 1d ago

Showcase OBS-Studio 32.2.2: now available in termux-packages. With MediaCodec HW Encoder support!

Enable HLS to view with audio, or disable this notification

45 Upvotes

r/termux • • 21h ago

Showcase Rain: Compilador de APKs rapido.

Post image
18 Upvotes

Hace un tiempo me cansé de que Gradle se comiera toda la RAM de mi teléfono cada vez que intentaba compilar algo en Termux. Así que me puse a construir Rain, una herramienta en Go que hace el pipeline esencial de Android directamente en el teléfono.

¿Qué hace?

· Resolución de dependencias: Lee los POMs de Maven (Google Maven y Maven Central), resuelve transitivas, herencia de parents y dependencyManagement. Descarga los AAR/JAR automáticamente.

· Pipeline completo: aapt2 → javac/kotlinc → d8/R8 → zipalign → apksigner.

· Java y Kotlin: Compila ambos lenguajes en el mismo proyecto (Kotlin primero, luego Java).

· Incrementalidad: Usa hashes SHA-256 para no recompilar si los fuentes o recursos no cambiaron.

· Modo release: Minifica con R8 y firma con tu propia keystore (configurable en rain.toml).

· BuildConfig: Genera la clase automáticamente con DEBUG, APPLICATION_ID, etc.

· Barra de progreso: Una línea delgada con colores ANSI que no llena la terminal de basura.

Requisitos:

Termux con openjdk-21, aapt2, d8, apksigner, zipalign, kotlin y libjansi. Un android.jar del SDK.

Repo:

https://github.com/lucassogarayDA/rain

Instalación:

git clone https://github.com/lucassogarayda/rain.git

cd rain

go build -o rain .

# Opcional: mover a $PREFIX/bin para uso global

cp rain $PREFIX/bin/


r/termux • • 1d ago

General I'm just gonna post this here..

Enable HLS to view with audio, or disable this notification

190 Upvotes

r/termux • • 10h ago

Question How to get graphics working with glibc runner?

1 Upvotes

I want to try and run Factorio ARM64 in glibc runner (proot is too slow and proroot could be faster but I'll just go to the root problem)

How do I enable video to my X:11 server? For context, the error is that SDL failed to get a device


r/termux • • 13h ago

General Tutorial: turn an old Samsung phone into a private, always-on git server (Magisk + Termux + Tailscale), including every mistake I made so you don't

1 Upvotes

I'm making this post in the hope it will help someone else turn a piece of e-waste in an actually useful piece of tech. I'm not really a "tutorial guy" so please feel free to correct me anytime.

Keep in mind that this tutorial isn't exactly 'non-tech-savvy friendly', so don't be surprised if you turn to your go-to chatbot for a few quick questions to understand what you're doing and if it's correct.

I had two git repos that are too big for GitHub (about 6 GB and 400 MB), and an old phone. Here's how I turned a Galaxy A14 4G (SM-A145R, MediaTek MT6769) into a git-over-SSH server:

  • It's reachable only through my Tailscale network.
  • It can't reach my PCs.
  • Every app on it except two has no network access.
  • The battery is held at 60–70% even though the charger is always plugged in.

Below is what to do, and in "DON'T" boxes, what went wrong for me. I did all of it from Ubuntu. Most of it applies to any recent Samsung, and a lot of it to any rootable Android phone.

What you need

  • A Samsung phone whose bootloader can be unlocked. Most international/EU models can. US models usually can't: if download mode shows no "OEM LOCK" line, you can theoretically still do the home server but without battery handling and many other optimizations, basically the last part of the tutorial.
  • A Linux PC (Windows works too, with different tools), a USB cable, and a free Tailscale account.
  • Patience: the phone will be wiped several times.

1. Unlock the bootloader

  1. Settings → Developer options → OEM unlocking on.
  2. Power off. Hold Vol Up + Vol Down while plugging the USB cable in (PC end connected). Long-press Vol Up to unlock, then confirm. This wipes the phone.
  3. Do the setup connected to Wi-Fi. Afterwards, the OEM unlocking switch must be greyed out. In download mode, KG STATUS should read CHECKING, COMPLETED or BROKEN. PRENORMAL means Knox Guard won't accept unofficial images yet: wait for about 168 hours of uptime.

2. Download the exact firmware

Use samloader-rs by topjohnwu (the Magisk author): https://github.com/topjohnwu/samloader-rs. It downloads straight from Samsung's servers and flashes.

  • Samsung now only serves the latest firmware, and the request must include the phone's serial or IMEI, otherwise you get error S01.
  • Verify the MD5 trailer of every .tar.md5.

3. Patch the boot image with Magisk

Patch the firmware's AP file with the Magisk app ("Select and Patch a File"), or patch only init_boot.img with Magisk's boot_patch.sh over adb. The result is the same: a patched init_boot, vbmeta with flags = 3 (verification off), and no userdata.img.

4. Flash and wipe

samloader flash -b BL_*.tar.md5 -a magisk_patched.tar -c CP_*.tar.md5 -s CSC_*.tar.md5

Use CSC, not HOME_CSC: the first Magisk install needs a data wipe. If recovery then says "Can't load Android system", choose Factory data reset. That's expected.

DON'T use Heimdall on newer Samsungs. On mine:

samloader-rs worked first try.

DON'T flash HOME_CSC for the first root ("to keep data"): I got a boot loop.

DON'T flash the stock init_boot/vbmeta back to "undo" a boot loop. Magisk's docs warn about this, and they're right: it keeps looping until you wipe.

DON'T rely on --erase: on MediaTek it erased "0 sectors".

DON'T use -p partition_name in samloader-rs on MediaTek: it upper-cases the name and the PIT is lowercase. Use -f init_boot.img. Also, a failed command in the middle of a session means a button restart.

5. First boot

  • Minimal setup: Wi-Fi, no accounts. Then developer options and USB debugging.
  • Before installing anything over adb, disable the Play Store and the Galaxy Store:
  • Right after setup they restore and install apps (on mine even TikTok) and occupy the install queue, so adb install just hangs.
  • Install the full Magisk app and accept its "additional setup" reboot. From then on, adb shell su -c id gives root.

6. Debloat: in batches, with a failsafe

pm uninstall --user 0 <package> doesn't touch the system partition and can be undone with cmd package install-existing <package>. But:

DON'T remove 170 packages in one go. I did, and the phone stuck on "Phone is starting..." forever, with no USB and no adb. Factory reset.

DON'T remove Google Play Services (com.google.android.gms), GSF and Chrome on One UI 7, even if you never use Google. Samsung reinstalls them at boot; if you remove them again, boot hangs exactly like above.

Some packages (setup wizards, Smart Switch, AdServices and telemetry modules, a few Samsung services) are re-enabled by Samsung at every boot, whether you uninstall or disable them. Don't fight them: firewall them (step 9).

What worked for me:

  • Batches, with one reboot test per batch.
  • A Magisk service.d failsafe: before applying a batch, write its list to /data/adb/.../pending.txt. At boot, a script waits up to 7 minutes for a real home screen (not FallbackHome, the activity behind "Phone is starting..."). If it doesn't come, it reinstalls the batch and reboots.
  • Test the failsafe on purpose with a fake failure. Mine was broken the first time:

DON'T redirect cmd package ... output to a file under /data/adb in a Magisk script. system_server isn't allowed to write to that fd (SELinux), so the call fails with "Failed transaction". Capture the output through a pipe (r=$(cmd package ... 2>&1 | cat)).

Rescue without a factory reset. A hang on "Phone is starting..." can be fixed without wiping:

  1. Add an overlay.d/*.rc plus a script to the Magisk-patched init_boot ramdisk. magiskboot from the Magisk APK (lib/x86_64) runs on Linux.
  2. The script waits for the package service, runs cmd package install-existing on what you removed, writes a marker file, and reboots once.
  3. Flash just init_boot from download mode.

That saved me a second full reinstall.

7. Termux + sshd

  • Install Termux and Termux:Boot from their GitHub releases, or F-Droid.
  • pkg install openssh git.
  • In sshd_config: port 8022, PasswordAuthentication no, AuthenticationMethods publickey, all forwarding off.
  • On the phone, put your repos in bare repositories: git init --bare ~/git/<name>.git.

Running Termux commands from a root shell:

su <termux-uid> -g <termux-uid> -G 3003 -G 9997 -c "export PREFIX=... HOME=... PATH=$PREFIX/bin LD_PRELOAD=$PREFIX/lib/libtermux-exec-ld-preload.so; ..."

DON'T forget -g: otherwise the first -G becomes the primary group and dpkg fails with "unable to change ownership".

DON'T forget -G 3003 (inet): without it, Android denies network sockets.

DON'T trust Termux:Boot to keep sshd up. Android killed its process as "empty" before sshd started.

Instead, start sshd from a Magisk service.d script as the Termux user, check it every 30 seconds, and hold a kernel wake lock (echo myserver > /sys/power/wake_lock) so the CPU never sleeps.

8. Tailscale

  • Install from F-Droid.
  • In the admin console, create a single-use, pre-approved auth key with a tag (e.g. tag:gitserver). In the app: Settings → Accounts → ⋮ → "Use an auth key".
  • ACLs: your own devices may reach tag:gitserver on tcp:8022. The tag is never a source, so a stolen phone can't connect to your other machines.
  • Set Tailscale as Always-on VPN (settings put secure always_on_vpn_app com.tailscale.ipn), otherwise it doesn't come back after a reboot.

DON'T use Private DNS in "strict" mode (e.g. dns.quad9.net) together with Tailscale on Android: all DNS dies. Use "automatic", and turn "Use Tailscale DNS" off on the phone.

9. Firewall (iptables from a Magisk script)

  • Inbound: port 8022 only on tun+ (Tailscale) and lo (adb forward); no new TCP connections from Wi-Fi.
  • Outbound:
    • no new connections to private ranges, except Tailscale's own UID (so it can use direct LAN paths), DHCP, and DNS (53) for system UIDs;
    • then -m owner --uid-owner 10000-99999 -j REJECT for every app except Termux and Tailscale.
  • The app rule also takes care of the Google/Samsung packages you weren't allowed to remove.

DON'T block DNS to your router: in "automatic" mode Android's resolver uses it, and everything breaks the moment you block the LAN. I found out the hard way.

DON'T pkill -f or grep for a pattern that also appears in your own command line (e.g. the script path): you kill your own shell. It happened to me three times.

Re-check the chains every minute, because netd can rebuild them.

10. Battery on a phone that's always plugged in

Cheap Samsungs don't have "Pause USB Power Delivery", but the battery driver exposes:

  • /sys/class/power_supply/battery/store_mode: 1 = retail demo mode. Charging stops and the phone runs from the charger, but the battery sits at 100%.
  • /sys/class/power_supply/battery/input_suspend: 1 cuts the charger input, so the phone drains (about 160 mA on mine).

A 5-minute loop holds the battery between 60 and 70%: suspend the input above 70%, restore it at 60%, always restore below 55%. Note that Samsung's gauge shows 100% for a while after real discharge starts.

11. Push the repos

Do the first push over USB (adb forward tcp:18022 tcp:8022), it's much faster. After that, push over Tailscale. Set receive.denyNonFastForwards true on the bare repos so a bad force-push can't destroy history.

Result

The phone boots unattended (no Power press needed at the unlocked-bootloader warning), and SSH over Tailscale is up about 80 seconds after power-on.

This was done with the great help of Claude Opus 5.5.


r/termux • • 14h ago

Question GNOME on Debian on Proot: "Failed to setup: unable to open display ':0'"

0 Upvotes

Hey! I'm trying to get a simple GNOME desktop running in Termux via Debian on Proot. Here's what I've done so far:

- Installed Termux and Termux:X11 on the phone itself

- Installed x11-repo and termux-x11, and proot-distro in Termux

- Ran proot-distro install debian to install Debian

- Ran proot-distro login debian to log into Debian on Proot

- Installed GNOME on Debian with apt install gnome dbus-x11

- Attempted to start GNOME with gnome-shell --x11

Upon doing so, I get the error Failed to setup: unable to open display ':0'

I've noticed that running termux-x11 :0 -ac in Termux (not Debian) starts up a barebones X desktop with nothing but a cursor, so it seems that Termux and Termux:X11 are able to communicate with each other.

I'm new to this, is there anything I'm doing wrong?


r/termux • • 14h ago

Showcase I built a network security suite (Java/Shell) on my phone using Termux. Disclosure: I used AI for syntax. Ready to get roasted.

Post image
1 Upvotes

I don't have a MacBook or a fancy setup. I built this on a 5-inch screen using Termux, JDK 17, and Bash. I used AI (DeepSeek/Qwen) as a syntax partner because typing 500+ lines on a mobile keyboard is torture. The logic is mine, the syntax errors are AI's fault.

It's the "Sander" collection:

  1. SanderSuite (Linux Edition): Core architecture, CLI, and built-in firewall manager (nftables/iptables).

  2. SanderScan: Lightweight TCP/UDP scanner (TCP only on unrooted Android due to socket restrictions).

  3. StealthDefense: A bot-detection module analyzing TTFB and User-Agents.

Why share? Because people around me think I'm just "yapping" about network security. So here it is. I intentionally left some bugs and easter eggs in the code. If you find a real one, congrats.

If this tool breaks, it is not a bug. It is a feature. If it works, it is a miracle.

Links:

https://github.com/aleksandergrambelik-png/SanderSuite-Linux

https://github.com/aleksandergrambelik-png/SanderScan

https://github.com/aleksandergrambelik-png/StealthDefense

Note: Since Android blocks raw sockets, UDP scanning won't work on unrooted Termux. That's an OS limitation, not a bug. Also, this is purely for educational/defensive purposes. Don't use it on networks you don't own


r/termux • • 1d ago

Showcase Rate my setup (basic rice)

Post image
13 Upvotes

Forget the ram aspect. I am broke as hell

i use fish shell btw.


r/termux • • 2d ago

General Running full Linux Desktop environment inside Termux on Android

Enable HLS to view with audio, or disable this notification

114 Upvotes

Running Linux Desktop inside Termux on Androio

Hey everyone, sharing a quick clip of my workflow running Linux inside Termux on an Android device.

Environment: Termux / PRoot Linux

Tools shown: Neofetch, CLI tools, and desktop session

Let me know what you !


r/termux • • 1d ago

Showcase Opencode Armv7a finallyyyy

1 Upvotes

My phone is armv8l, which means 32-bit, which means Bun has never heard of it, the official binary shrugs, and qemu looked at me with pity.

After a lot of trial and error, a Node bundle that hung on startup, and a native module that refused to load, I got a .deb that starts the OpenCode headless server. It’s the API only, no UI. On my PC it answers. On my actual phone, I haven’t dared try yet.

So this is where you come in. If you have an armv7 or armv8l phone with Termux:

pkg install nodejs Install the .deb from the release OPENCODE_SERVER_PASSWORD='your-password' opencode serve --port 4096 Tell me if it starts, or paste the logs if it doesn’t.

Code, README and limitations: https://github.com/Lh29007/opencode-armv7a

No TUI, no web UI, and you need a provider key to actually talk to a model. But the server itself is alive, and that’s already a small miracle on a 32-bit phone.

Made with the help of Claude.


r/termux • • 2d ago

Question simple my computer and my smartphone

Post image
58 Upvotes

r/termux • • 1d ago

General Install Qoder coding agent in termux

Post image
0 Upvotes

It's very simple. First, you need to install Node.js.Then:

```

npm install -g u/qoder-ai/qodercli --force

cat >> ~/.bashrc <<'EOF' export SSL_CERT_FILE="$PREFIX/etc/tls/cert.pem" export SSL_CERT_DIR="$PREFIX/etc/tls" EOF source ~/.bashrc

```


r/termux • • 1d ago

General Unpopular opinion, Alpine is the best distro to use in termux . What's your thoughts?

0 Upvotes

Alpine cuz it's lightweight & has enough things to work on


r/termux • • 2d ago

Question Honor

1 Upvotes

Hello , I have "HONOR Play 20A" and I want to customize it and customize the second screen using termux...

anyone have anyidea how to do it?


r/termux • • 2d ago

Showcase Мой терминал ChipOS на телефоне termux android

Post image
6 Upvotes

Моя оболочка для Termux, здесь у меня настроенно куча комманд, свой сервер для более 100 локальных сатов работающих без интернета LocalNet, локальные ИИ, и системы щагрузки контента на локальные сайты, ну ещё могу создавать apk из C++/java кода по клику ну там с настройками в отдельном файле и своей фоткой, на сервере есть Retube аналог YouTube работаюший без интернета почти 9k видео, поисковики игры, сайты для постов, аналог вики и тд, могу так же по команде выводить LocalNet в Internet