Skip to content

Releases

πŸš€ v2.0.0 β€” DNS Fixed + Patched musl Loader

Choose a tag to compare

@AbdulRahmanMMuhammad AbdulRahmanMMuhammad released this 21 Oct 18:28
aa6ebfd

πŸš€ Termux Claude Code Installer v2.0.0

πŸ”₯ Run Claude Code natively on Termux β€” 100% WORKING, 0% PROOT, DNS FIXED, one command and you're in! πŸš€


License: GPL v3
Platform: Termux
Architecture: aarch64
Version


πŸŽ‰ Major update β€” DNS now works!

This release fixes the #1 issue from v1.0.0: DNS resolution failures inside Claude Code.

If you had EAI_AGAIN, getaddrinfo failed, or network errors on v1.0.0, v2.0.0 fixes it.


⚑ Install in 10 seconds

curl -fsSL https://raw.githubusercontent.com/Ryovx/Termux-Claude-Code/main/install.sh | bash

Then run:

claude

That's it. 🎯

Upgrading from v1.0.0? Just re-run the command above. The installer detects and replaces the old Alpine musl runtime automatically.


πŸ› What was broken in v1.0.0

Claude Code needs network access. The stock Alpine musl loader reads /etc/resolv.conf, which is not readable inside Termux. Android routes DNS through the netd system service, so musl-based lookups were failing with:

EAI_AGAIN
getaddrinfo failed

Result: claude would launch, but every API call to Anthropic would fail with a network error.


✨ What's new in v2.0.0

🌐 DNS fixed β€” patched musl loader

We now ship a patched musl loader built from Ryovx/Musl-on-Termux that adds:

Addition Behavior
MUSL_ON_TERMUX=1 env var Read DNS configuration from $PREFIX/etc/resolv.conf
Deterministic fallback If no nameserver found β†’ 1.1.1.1 β†’ 8.8.8.8 β†’ 127.0.0.1

The launcher sets MUSL_ON_TERMUX=1 unconditionally, so DNS works with zero user configuration.

πŸ” SHA256-verified runtime

The musl runtime is now downloaded from a signed release archive and verified against a pinned SHA256 before extraction. Installation aborts on any mismatch.

MUSL_ZIP_SHA256 = e4f456187a54f6fbbcda31026354728262b5acfce11642eaca2df88722c9870b

πŸ“„ Automatic resolv.conf setup

The installer creates $PREFIX/etc/resolv.conf with sane defaults if it doesn't exist:

nameserver 1.1.1.1
nameserver 8.8.8.8

If you already have a resolv.conf, it is preserved β€” never overwritten.

πŸ›‘οΈ Safer installer

  • Atomic swap β€” the old package is only removed after the new one is validated (size + executability)
  • --force wipes musl runtime β€” clean re-download when needed
  • claude-uninstall safety guard β€” refuses to run outside a Termux $PREFIX
  • readelf instead of file β€” more reliable ELF inspection across Termux versions
  • Minimum free space raised to 800 MB (peak during atomic swap)

πŸ“¦ What gets installed

Path Purpose
$PREFIX/bin/claude Launcher (6 lines of bash)
$PREFIX/bin/claude-fix Restores launcher from template
$PREFIX/bin/claude-update Updates to latest npm release
$PREFIX/bin/claude-uninstall Removes everything
$PREFIX/lib/claude-musl/ Patched musl loader + libc + headers
$PREFIX/lib/node_modules/@anthropic-ai/claude-code-linux-arm64-musl/claude The official 280 MB binary
$PREFIX/etc/resolv.conf DNS servers (created if missing)

Nothing is written outside $PREFIX.


πŸ’₯ Breaking changes

If you're upgrading from v1.0.0:

  • ⚠️ The Alpine musl runtime is removed. The installer downloads the patched musl from Ryovx/Musl-on-Termux instead.
  • ⚠️ MUSL_ON_TERMUX=1 is now mandatory. The launcher sets it automatically β€” no action needed from you.
  • ⚠️ Minimum free space raised from 700 MB β†’ 800 MB.
  • ⚠️ Minimum installer version is now 2.0.0. Older v1.0.0 launchers will not be upgraded by the new installer's claude-fix β€” re-run install.sh instead.

Migration:

curl -fsSL https://raw.githubusercontent.com/Ryovx/Termux-Claude-Code/main/install.sh | bash

That's it. The installer handles everything.


πŸ“‹ Requirements

Requirement Details
Termux From F-Droid or GitHub Releases β€” NOT Play Store
Architecture aarch64 (ARM64) only
Free space ~800 MB
Internet Required during install and update
Root ❌ Not required

πŸ“– Documentation

Full documentation in three languages:

Language README Contributing Security Support Code of Conduct
πŸ‡¬πŸ‡§ English README.md CONTRIBUTING.md SECURITY.md SUPPORT.md CODE_OF_CONDUCT.md
πŸ‡ΈπŸ‡¦ Ψ§Ω„ΨΉΨ±Ψ¨ΩŠΨ© README.ar.md CONTRIBUTING.ar.md SECURITY.ar.md SUPPORT.ar.md CODE_OF_CONDUCT.ar.md
πŸ‡¨πŸ‡³ δΈ­ζ–‡ README.zh.md CONTRIBUTING.zh.md SECURITY.zh.md SUPPORT.zh.md CODE_OF_CONDUCT.zh.md

πŸ› Known limitations

  • ❌ x86_64 and armv7 not supported (only aarch64)
  • ❌ Play Store Termux not supported (use F-Droid or GitHub Releases)
  • ⚠️ OAuth login may be unreliable on some Termux setups β€” use API key instead:
export ANTHROPIC_API_KEY=sk-ant-...
claude

πŸ“œ License

Licensed under the GNU General Public License v3.0 or later (SPDX: GPL-3.0-or-later). See LICENSE for full text.

🀝 Open Invention Network (OIN)

Ryovx is a proud member of the Open Invention Network (OIN). In line with OIN's mission and our commitment to the Termux community, most of Ryovx's service products are released under GNU GPLv3.

The patched musl runtime bundled by this installer is distributed under the MIT License by Ryovx/Musl-on-Termux. The musl sources it is based on are released under the MIT License by the musl project.

πŸ’š Ethical Request β€” Not a Legal Restriction

Just as we provide this tool completely free of charge, we kindly ask that you do the same: please keep it free.

This is a friendly request, not a legal prohibition. Under GPLv3, you retain the full right to redistribute this software, including commercially. We simply hope you'll choose to honor the spirit in which it was shared.


πŸ™ Full Changelog

Full Changelog: v1.0.0...v2.0.0

See CHANGELOG.md for the complete changelog.


Built with ❀️ for the Termux community

⭐ If this project saved you hours of head-scratching, consider starring the repo ⭐

Star History Chart


Not affiliated with Anthropic. Claude Code is a trademark of Anthropic, PBC.

πŸš€ v1.0.0 β€” Native Claude Code on Termux

Choose a tag to compare

@AbdulRahmanMMuhammad AbdulRahmanMMuhammad released this 20 Oct 18:45
19d7b07

πŸš€ Termux Claude Code Installer v1.0.0

πŸ”₯ Run Claude Code natively on Termux β€” 100% WORKING, 0% PROOT, one command and you're in! πŸš€


License: GPL v3
Platform: Termux
Architecture: aarch64


πŸŽ‰ First stable release!

This is the initial public release of the Termux Claude Code Installer β€” a permanent, system-level installer that makes claude work natively on Android's Termux without proot, chroot, or patchelf.


⚑ Install in 10 seconds

curl -fsSL https://raw.githubusercontent.com/Ryovx/Termux-Claude-Code/main/install.sh | bash

Then run:

claude

That's it. 🎯


✨ What's included

πŸš€ Core

  • Native execution β€” Runs the official linux-arm64-musl binary published by Anthropic
  • No proot, no chroot β€” No containers, no VMs, no emulation
  • No patchelf β€” Deliberately avoids the SIGSEGV that happens when you patch musl binaries on Android kernels
  • One-command install β€” Copy, paste, done
  • Zero rc-file changes β€” Never touches ~/.bashrc or ~/.zshrc

πŸ”§ Tools

Command Description
claude Run Claude Code (interactive session)
claude-update Smart updater β€” skips download if already latest
claude-fix Self-healing launcher restoration
claude-uninstall Clean removal of every artifact

πŸ“¦ What gets installed

Path Purpose
$PREFIX/bin/claude Launcher (6 lines of bash)
$PREFIX/bin/claude-fix Restores launcher from template
$PREFIX/bin/claude-update Updates to latest npm release
$PREFIX/bin/claude-uninstall Removes everything
$PREFIX/lib/claude-musl/ Alpine's musl loader + libraries
$PREFIX/lib/node_modules/@anthropic-ai/claude-code-linux-arm64-musl/claude The official 280 MB binary

Nothing is written outside $PREFIX.


πŸ“‹ Requirements

Requirement Details
Termux From F-Droid or GitHub Releases β€” NOT Play Store
Architecture aarch64 (ARM64) only
Free space ~700 MB
Internet Required during install and update
Root ❌ Not required

πŸ“– Documentation

Full documentation in three languages:

Language README Contributing Security Support Code of Conduct
πŸ‡¬πŸ‡§ English README.md CONTRIBUTING.md SECURITY.md SUPPORT.md CODE_OF_CONDUCT.md
πŸ‡ΈπŸ‡¦ Ψ§Ω„ΨΉΨ±Ψ¨ΩŠΨ© README.ar.md CONTRIBUTING.ar.md SECURITY.ar.md SUPPORT.ar.md CODE_OF_CONDUCT.ar.md
πŸ‡¨πŸ‡³ δΈ­ζ–‡ README.zh.md CONTRIBUTING.zh.md SECURITY.zh.md SUPPORT.zh.md CODE_OF_CONDUCT.zh.md

πŸ”§ How it works (short version)

Claude Code ships a linux-arm64-musl ELF binary. Termux runs on Android's Bionic libc, not musl. Direct execution fails with cannot execute: required file not found because the binary requests /lib/ld-musl-aarch64.so.1.

What doesn't work:

  • ❌ patchelf β†’ SIGSEGV on Android kernels
  • ❌ proot / chroot β†’ slow, breaks claude's bash tool
  • ❌ npm wrapper claude-code-termux β†’ broken with Claude Code β‰₯ 2.1.x

What does work (this project):

  1. Download Alpine's musl loader + .so files into $PREFIX/lib/claude-musl/
  2. Download the official linux-arm64-musl binary from npm
  3. Create a 6-line launcher that unsets LD_PRELOAD, invokes the musl loader with --library-path, and execs the real binary

No patchelf, no proot, no chroot, no magic.


πŸ› Known limitations

  • ❌ x86_64 and armv7 not supported (only aarch64)
  • ❌ Play Store Termux not supported (use F-Droid or GitHub Releases)
  • ⚠️ OAuth login may be unreliable on some Termux setups β€” use API key instead:
export ANTHROPIC_API_KEY=sk-ant-...
claude

πŸ“œ License

Licensed under the GNU General Public License v3.0 or later (SPDX: GPL-3.0-or-later). See LICENSE for full text.

🀝 Open Innovation Network (OIN)

Ryovx is a proud member of the Open Innovation Network (OIN). In line with OIN's mission and our commitment to the Termux community, most of Ryovx's service products are released under GNU GPLv3.

πŸ’š Ethical Request β€” Not a Legal Restriction

Just as we provide this tool completely free of charge, we kindly ask that you do the same: please keep it free.

This is a friendly request, not a legal prohibition. Under GPLv3, you retain the full right to redistribute this software, including commercially. We simply hope you'll choose to honor the spirit in which it was shared.


πŸ™ Full Changelog

Initial release β€” no previous version to compare against.

See CHANGELOG.md for the complete changelog.


Built with ❀️ for the Termux community

⭐ If this project saved you hours of head-scratching, consider starring the repo ⭐

Star History Chart


Not affiliated with Anthropic. Claude Code is a trademark of Anthropic, PBC.