Show HN: Proroot – Zero-overhead proot replacement for Android
github.comI built a drop-in replacement for proot that runs full Linux userspace (Node.js, Python, Git, Chromium) on Android without root.
proot uses ptrace — 2 context switches per syscall. proroot uses LD_PRELOAD + binary patching — 0 context switches, in-process path translation.
It powers andClaw, an app that turns Android phones into AI agent gateway servers running OpenClaw with a real Chromium browser.
Tested with Node.js 24, Python 3.12, Git, and Chromium headless_shell (Playwright).
Binary release (arm64 .so files): https://github.com/coderredlab/proroot Replacing ptrace with LD_PRELOAD is the obvious move but the devil is in the details. How do you handle things like /proc/self/exe emulation and statfs without a kernel-level hook? Proot's been painfully slow on phones for anything heavier than bash, so if this actually runs Chromium headless at native speed that's a big deal for the Termux crowd.