Skip to main content

The first offline-first, source-based TUI package manager built natively for Termux

Project description

Termux App Store — TUI Package Manager for Termux

Termux App Store — TUI & CLI Package Manager for Termux

The first offline-first, source-based TUI package manager built natively for Termux on Android.

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

CI Codecov PyPI
Version Downloads License

Stars Forks

Issues PRs Community Ready

Offline-first  •  Source-based  •  Binary-safe  •  Termux-native  •  Android Terminal

Install and manage Termux packages from source with a beautiful TUI or CLI — 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, build, install, and manage tools/packages directly on-device — no account, no telemetry, no cloud dependency, no root required.

It works as an alternative package manager for Termux, letting you install community tools from source 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 (Termux User Repository) is a curated extension, still requires contributor review.
  • Termux App Store is fully community-driven: anyone can submit a build.sh, all builds run locally on your device, 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 centralized binary repository and not a hidden auto-installer. All builds run locally, transparently, and under full user control.


Who Is It For?

User Use Case
Termux Users Full control over builds & packages
Developers Distribute tools via source-based 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

Quick Install and Uninstall

Available on PyPI — searchable via pip search and indexed by PyPI, making it easier to discover.

Option 1 (Recommended)

pkg install python
pip install termux-app-store

Option 2 (Manual)

Simple (Recommended for not download high memory)

curl -fsSL https://raw.githubusercontent.com/djunekz/termux-app-store/master/tasctl | bash -s install

or

With git clone (For download full files repository)

git clone https://github.com/djunekz/termux-app-store
cd termux-app-store
bash install.sh

or

git clone https://github.com/djunekz/termux-app-store
cd termux-app-store
./tasctl install

After download and install then run:

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

Uninstall

pip uninstall termux-app-store

or

./tasctl uninstall

Usage

TUI — Interactive Interface

termux-app-store

CLI — Direct Commands

termux-app-store list                  # List all packages
termux-app-store show <package>        # Show package details
termux-app-store install <package>     # Build & install a package
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 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.

Smart Build Validator Detects unsupported Termux dependencies with automatic status badges.

Real-time Search & Filter Instantly search packages by name or description — no reload needed.

One-Click Build Install or update a package in one click via build-package.sh.

One-Click Validator Validate packages before distribution via ./termux-build.

One-Click Manage Install / update / uninstall Termux App Store itself via ./tasctl.

Self-Healing Path Resolver Auto-detects app location even if the folder is moved or renamed.

Privacy-First No account, no tracking, no telemetry — fully offline.


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

Adding a Package

Want to create your own Termux package and distribute it? Every package in Termux App Store is defined by a single build.sh file — similar to how PKGBUILD works in Arch Linux or formula works in Homebrew, 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

Open directory termux-app-store

cd termux-app-store

Then run

./termux-build create nameyourtool

[!NOTE] When naming, do not use spaces, use the - sign in the name. For example: this-is-my-tool


termux-build — Build package and 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 lint <package>        # Lint a build script
./termux-build init <url-repo>       # Auto create and build package for distribution
./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 a controller 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 this help

guidebook — All Information Termux App Store

guidebook.py is a information use, build, contributing to Termux App Store

python guidebook.py

[!NOTE] guidebook currently only supports two languages: English and Indonesia


Architecture

termux-app-store/
├── packages/              # All packages directory
│   └── <tool-name>/
│       └── build.sh       # Metadata & build script
├── template/
│   └── build.sh           # Package template
├── tasctl                 # TAS installer/updater/uninstaller
├── termux-build           # Validation & review tool
└── install.sh             # Main installer

Full details: ARCHITECTURE


Security & Privacy

Security

  • No extra permissions required
  • No network ports opened
  • No background services running
  • Builds only run on explicit user command

Privacy

  • No account or registration
  • No analytics or tracking
  • No telemetry of any kind
  • Offline-first by design

Full details: SECURITY  |  PRIVACY  |  DISCLAIMER


How to Distribute Your Package to the Termux Community

Want to share your tool with the Termux community? Distributing a package to Termux App Store means anyone running Termux on Android can install it with one command — no server needed, no binary hosting required.

Why distribute here instead of a standalone repo?

  • Users can discover your tool via the TUI browser without knowing your GitHub URL
  • Updates only require changing version and sha256 in build.sh
  • Your tool appears in the TUI with automatic status badges
  • No approval gate — submit a PR and the community can use it immediately

How to distribute / upload your package:

# 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
# 4. Validate with termux-build:
./termux-build lint packages/your-tool-name
# 5. Submit a Pull Request

Full guide: How to upload package in termux-app-store


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


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

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


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

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


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

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

termux_app_store-0.3.0.tar.gz (56.0 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

termux_app_store-0.3.0-py3-none-any.whl (31.6 kB view details)

Uploaded Python 3

File details

Details for the file termux_app_store-0.3.0.tar.gz.

File metadata

  • Download URL: termux_app_store-0.3.0.tar.gz
  • Upload date:
  • Size: 56.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.12.9

File hashes

Hashes for termux_app_store-0.3.0.tar.gz
Algorithm Hash digest
SHA256 78304406df4edf3d2b31abfdba88694d239be620130435916cf04415bc95e39b
MD5 7ed9ce346524ea07cd7e2fd601ff09e5
BLAKE2b-256 485f005c9f99cb4895997ba01cb66ae2ba551e2cc7092151607ce28e12b1c007

See more details on using hashes here.

Provenance

The following attestation bundles were made for termux_app_store-0.3.0.tar.gz:

Publisher: publish.yml on djunekz/termux-app-store

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file termux_app_store-0.3.0-py3-none-any.whl.

File metadata

File hashes

Hashes for termux_app_store-0.3.0-py3-none-any.whl
Algorithm Hash digest
SHA256 aa17dda2f205f4b121fc777506ecbea97311747d375c83ba8bb8fc689ebaa1e7
MD5 f550ff871e77f3336e55a9ee0b1e27a2
BLAKE2b-256 f72185561e527f6974cb2ff854755d1dd0963dbae77e765550149f67d512d3d6

See more details on using hashes here.

Provenance

The following attestation bundles were made for termux_app_store-0.3.0-py3-none-any.whl:

Publisher: publish.yml on djunekz/termux-app-store

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page