internal-termux is an embeddable Android runtime fork that keeps Termux-style
paths, bootstrap, and session wiring under host-app ownership instead of under
a standalone com.termux app shell.
core/: embeddable runtime library with host-derived paths, runtime config, native session builders, and offline bootstrap installationproot-plugin/: optional proot launcher that returns the same host-facing session contract ascoresample-app/: minimal host app for verifying the embed API surfacetools/: verification and merge-protection scripts
Android package ownership follows the project convention:
com.darkian.itermux.*for this repocom.darkian.studio.*for DDS after its rename
iTermux.initialize()derives the runtime from the host app, writestermux.env, readstermux.properties, and auto-installs the packaged offline bootstrap on cold start when the payload is available.- Native sessions come from
core, while proot sessions stay isolated in the optional plugin and share the sameiTermuxSessioncontract. sample-app/is the verification host. There is no standalone Termux launcher in the library modules.tools/merge-check.shreportsSAFE,REVIEW, andCONFLICTstates for tagged fork files relative to an upstream-tracking ref.
./gradlew.bat :core:testDebugUnitTest./gradlew.bat :proot-plugin:testDebugUnitTest./gradlew.bat assembleDebugpowershell -ExecutionPolicy Bypass -File tools\\verify-no-termux-literals.ps1powershell -ExecutionPolicy Bypass -File tools\\verify-supported-packages-sync.ps1bash tools/merge-check.sh [base-ref] [head-ref]