Profile
Back to NewsBack
GitHub Trending 9 min
Reader Mode
djunekz/termux-app-store: TUI & CLI package manager for Termux on Android. Browse, build, and install community tools from source and binary source — offline, SHA256-verified, no root. Like AUR but for Termux.

djunekz/termux-app-store: TUI & CLI package manager for Termux on Android. Browse, build, and install community tools from source and binary source — offline, SHA256-verified, no root. Like AUR but for Termux.

19 hours ago

![Termux App Store — TUI Package Manager for Termux](https://github.com/djunekz/termux-app-store/raw/master/.assets/00.jpeg)

Termux App Store — TUI & CLI Package Manager for Termux

The first offline-first, binary-safe TUI package manager built natively for Termux on Android.

Read in: 🇮🇩 Bahasa Indonesia | 🇹🇭 ภาษาไทย | 🇯🇵 日本語 | 🇨🇳 中文 | 🇻🇳 Tiếng Việt | 🇮🇳 हिन्दी

CI</a> Codecov</a> PyPI</a> Version</a> Downloads</a> License</a> Stars</a> Forks</a> Issues</a> PRs</a> Community Ready</a>

Offline-first • Binary-safe • Source-based • Termux-native • Android Terminal
Install and manage Termux packages — pre-built binaries or source builds — no root, no account, no telemetry.

What is Termux App Store?

Termux App Store (termux-app-store) is a TUI (Terminal User Interface) and CLI package manager built with Python (Textual) that lets Termux users on Android browse, install, and manage tools/packages directly on-device — no account, no telemetry, no cloud dependency, no root required.

Starting from v0.4.0, Termux App Store supports a fast install engine: packages are downloaded as pre-built .deb binaries from a mirror pool (GitHub Pages, Cloudflare CDN, jsDelivr), with local .deb caching (TTL 7 days) and per-arch SHA256 verification. Source builds remain available via fix-install for full control.

It works as an alternative package manager for Termux, letting you install community tools using verified build.sh scripts — similar in spirit to the AUR (Arch User Repository) but designed specifically for Termux on Android.

How is this different from termux-packages or TUR (Termux User Repository)?
> - termux-packages is the official Termux repo — maintained by the core team, requires PR approval, and only accepts widely-used tools.
- TUR is a curated extension, still requires contributor review.
- Termux App Store is fully community-driven: anyone can submit a build.sh, packages are distributed as pre-built .deb or source builds, and there is no centralized approval gate. Think of it as a personal + community package layer on top of Termux.
[!IMPORTANT]
Termux App Store is not a hidden auto-installer.
All installs — binary or source — run locally, transparently, and under full user control.

Who Is It For?

| User | Use Case | |---|---| | Termux Users | Fast binary installs or full source-build control | | Developers | Distribute tools via pre-built .deb or source packaging | | Reviewers & Auditors | Review and validate build scripts | | Maintainers | Manage multiple Termux packages at once |


Screenshots

Termux App Store — Main View



Tui Interface

| TUI Main Interface | TUI Install Interface | Menu Palette | |:---:|:---:|:---:| | TUI Main Interface | TUI Install Interface | Menu Palette Interface | | TUI main menu | Package install process | Command palette |

TUI User-friendly with full touchscreen support

CLI Interface

| Other tools support | CLI Install Interface | CLI View Interface | |:---:|:---:|:---:| | Other tools support | CLI Install Interface | CLI View Interface | | tasctl and termux-build | Package install process | CLI help, list and show |


GuideBook

| List menu | Menu about | Menu how to upload | |:---:|:---:|:---:| | List menu | Menu about | Menu how to upload | | GuideBook main menu | Information termux-app-store | Guide how to upload |

GuideBook is a information, run: python guidebook.py

Screenrecord

| Record termux-app-store TUI, CLI, Other tool tasctl, termux-build, guidebook.py | |:---:| | termux-app-store | termux-app-store


Quick Install and Uninstall

Available on PyPI — searchable and indexed, easy to discover.

Option 1 (Recommended)

pkg install python
pip install termux-app-store

Option 2 (Manual)

Simple (recommended if memory is limited)
curl -fsSL https://raw.githubusercontent.com/djunekz/termux-app-store/master/tasctl | bash -s install
With git clone (downloads full repository)
git clone --single-branch --branch master https://github.com/djunekz/termux-app-store
cd termux-app-store
bash install.sh

After install, run:

termux-app-store        # Open interactive TUI
termux-app-store -h     # Show CLI help
tas                     # Shorthand for termux-app-store

Uninstall

pip uninstall termux-app-store

or

./tasctl uninstall

Usage

TUI — Interactive Interface

termux-app-store

or shorthand:

tas

CLI — Direct Commands

termux-app-store list                     # List all packages
termux-app-store show <package>           # Show package details
termux-app-store install <package>        # Fast install (pre-built .deb)
termux-app-store install pkg1 pkg2 pkg3   # Multi-package install
termux-app-store fix-install <package>    # Force source build (bypass fast install)
termux-app-store search <query>           # Search packages by name or description
termux-app-store update                   # Check for available updates
termux-app-store upgrade                  # Upgrade all packages
termux-app-store upgrade <package>        # Upgrade a specific package
termux-app-store uninstall <package>      # Uninstall a package
termux-app-store mirrors                  # Check mirror status
termux-app-store cache info               # Show binary cache info
termux-app-store cache clear              # Clear binary cache
termux-app-store version                  # Check latest version
termux-app-store help                     # Full help

Features

| Package Browser (TUI) Browse packages from the packages/ folder interactively with keyboard & touchscreen navigation.
Fast Install Engine Downloads pre-built .deb from mirror pool — GitHub Pages, Cloudflare CDN, jsDelivr — with automatic fallback.
Binary Cache Local .deb cache with 7-day TTL and per-arch SHA256 verification. Cached packages install instantly.
Smart Build Validator Detects unsupported Termux dependencies with automatic status badges. | Real-time Search & Filter Search packages by name or description — search/find CLI commands included.
Multi-package Install/Uninstall Install or remove several packages in one command with a summary output.
One-Click Manage Install / update / uninstall Termux App Store itself via ./tasctl.
Privacy-First No account, no tracking, no telemetry — fully offline after mirror sync. | |---|---|


Package Status Badges

| Badge | Description | |---|---| | NEW | Newly added package (< 7 days) | | UPDATE | A newer version is available | | INSTALLED | Installed version is up-to-date | | UNSUPPORTED | Dependency not available in Termux |


How Fast Install Works (v0.4.0+)

termux-app-store install <package>
        │
        ▼
  Check local .deb cache (TTL 7 days)
        │ cache HIT          │ cache MISS
        ▼                    ▼
  Verify SHA256        Try mirrors in order:
  (per arch)           1. GitHub Pages (primary)
        │              2. Cloudflare CDN
        ▼              3. jsDelivr CDN
  dpkg -i              4. Raw GitHub (fallback)
                             │
                             ▼
                       Download .deb
                       Verify SHA256 (sha256_by_arch)
                       Cache locally
                       dpkg -i
If fast install fails, use fix-install to force a full source build via build-package.sh.

Adding a Package

Every package in Termux App Store is defined by a single build.sh file — similar to how PKGBUILD works in Arch Linux, but adapted for Termux on Android.

Every package must have a build.sh file:

packages/<tool-name>/build.sh

Minimal build.sh Template

TERMUX_PKG_HOMEPAGE=""
TERMUX_PKG_DESCRIPTION=""
TERMUX_PKG_LICENSE=""
TERMUX_PKG_MAINTAINER="@your-github-username"
TERMUX_PKG_VERSION=""
TERMUX_PKG_SRCURL=""
TERMUX_PKG_SHA256=""
[!NOTE]
See the full template in template/build.sh or run: ./termux-build template

Adding a Package using termux-build

cd termux-app-store
./termux-build create your-tool-name

or auto-create from a GitHub URL:

./termux-build init https://github.com/user/repo
[!NOTE]
When naming, do not use spaces — use -. Example: my-tool-name

termux-build — Build & Validation Tool

termux-build is a validation and reviewer helper tool — not an auto-upload or auto-publish tool.

./termux-build create <package>      # Create package for distribution
./termux-build init <url-repo>       # Auto-create and build package from GitHub URL
./termux-build lint <package>        # Lint a build script
./termux-build check-pr <package>    # Check PR readiness
./termux-build doctor                # Diagnose environment
./termux-build suggest <package>     # Get improvement suggestions
./termux-build explain <package>     # Detailed package explanation
./termux-build template              # Generate build.sh template
./termux-build guide                 # Contribution guide
[!NOTE]
termux-build only reads and validates — it does not modify files or upload to GitHub.

tasctl — Termux App Store Controller

tasctl is the controller for the termux-app-store system.

./tasctl install       # Install Termux App Store (latest)
./tasctl update        # Update to latest version
./tasctl uninstall     # Remove Termux App Store
./tasctl doctor        # Diagnose environment
./tasctl self-update   # Update tasctl itself
./tasctl help          # Show help

guidebook — All Information About Termux App Store

python guidebook.py
[!NOTE]
guidebook currently supports two languages: English and Bahasa Indonesia.

How to Distribute Your Package to the Termux Community

# 1. Fork this repo

2. Add your package folder:

mkdir packages/your-tool-name

3. Create build.sh from the template or with termux-build:

./termux-build create your-tool-name

or from a GitHub URL:

./termux-build init https://github.com/you/your-repo

4. Validate with termux-build:

./termux-build lint packages/your-tool-name

5. Submit a Pull Request

Full guide: HOW_TO_UPLOAD.md

Architecture

termux-app-store/
├── packages/              # All packages directory
│   └── <tool-name>/
│       └── build.sh       # Metadata & build script
├── template/
│   └── build.sh           # Package template
├── core/
│   ├── binary_core.py     # BinaryCache — local .deb cache + mirror download
│   ├── mirrors.py         # MirrorManager — mirror pool registry
│   ├── package.py         # Package dataclass
│   └── validator.py       # PackageValidator
├── utils/
│   └── installer.py       # install_from_binary / install_from_source helpers
├── tools/
│   └── mirrors.json       # Mirror registry (GitHub Pages, Cloudflare, jsDelivr, raw GitHub)
├── fast_install.py        # Fast install engine (.deb download + cache + SHA256 verify)
├── tasctl                 # TAS installer/updater/uninstaller
├── termux-build           # Validation & review tool
└── install.sh             # Main installer
Full details: ARCHITECTURE.md

Security & Privacy

| Security | Privacy | |---|---| | No extra permissions required | No account or registration | | No network ports opened | No analytics or tracking | | No background services running | No telemetry of any kind | | Builds only run on explicit user command | Offline-first by design | | SHA256 verification on all .deb downloads | Binary source is transparent and auditable |

Full details: SECURITY.md | PRIVACY.md | DISCLAIMER.md | BINARY_DISCLAIMER.md

Contributing

All contributions are welcome!

| How to Contribute | Description | |---|---| | Add a package | Submit a new tool package | | Report a bug | Open an issue on GitHub | | Send a PR | Code or documentation improvements | | Review PRs | Help validate others' contributions | | Security audit | Review build script security | | Improve docs | Clarify or translate documentation |

Full guide: CONTRIBUTING.md

Help & Documentation

| Document | Description | |---|---| | FAQ | Frequently asked questions | | TROUBLESHOOTING | Solutions to common problems | | HOW TO UPLOAD | How to upload your tool | | CONTRIBUTING | Contribution guide | | SUPPORT | How to get support | | BINARY_DISCLAIMER | Notes on binary distribution |


Philosophy

"Local first. Control over convenience. Transparency over magic."

Termux App Store is built for users who want to:

  • Fully understand what runs on their device
  • Control builds and sources directly
  • Avoid vendor lock-in and cloud dependency
  • Share tools openly with the Termux community

License

This project is licensed under the MIT License — see LICENSE for details.


Maintainer

Djunekz — Independent & Official Developer

GitHub</a>


Support This Project

If Termux App Store has been useful to you:

  • Star this repo — helps others discover it
  • Share it in Termux & Android communities
  • Report bugs via Issues
  • Submit a PR for any improvement
  • Sponsor: https://saweria.co/redHh

Star History

Star History Chart


Related Projects & Keywords

This project is independently developed and is not affiliated with the official Termux project.

Search terms: termux app store · termux package manager · termux tui · termux cli · termux tools · android terminal package manager · termux custom packages · termux source build · termux binary install · termux deb installer · termux alternative · termux community packages · termux offline installer · termux-app-store djunekz · install packages termux android · alternative to termux-packages · alternative to TUR termux · how to distribute package termux · termux community repo · termux build from source android · create termux package · custom repo termux · tas command termux


© Termux App Store — Built for everyone, by the community.

Chat with me