OpenClaw on Android: glibc ld.so instead of a proot Linux distribution
Run OpenClaw on Android with a single command — no proot, no Linux
At a glance
- What is it?
- This project runs OpenClaw inside Termux by installing only the glibc dynamic linker, skipping the 1-2GB Debian or Ubuntu layer that proot-distro would add. The trade is a smaller footprint for a setup that depends on Termux staying alive in the foreground.
- Who is it for?
- Adopt it if you have an Android 7.0+ spare phone, roughly 1GB free, and you are willing to run the gateway in a foreground Termux session on the device itself. Do not adopt it if you need the gateway to survive an SSH disconnect, if you rely on Play Store Termux, or if your workflow assumes systemd.
- Can I use it commercially?
- Yes. MIT is a permissive licence: you can use, modify and sell software built on it, as long as you keep its copyright and licence notices.
- Is it still maintained?
- Yes. The repository last received commits 78 days ago.
- What is it written in?
- Mainly Java, according to GitHub's language statistics.
Answers come from the project's GitHub data, last synced on September 15, 2026, and from our analysis. They are not legal advice.
DEEP OPEN-SOURCE ANALYSIS
The 1-2GB proot layer this project removes
OpenClaw targets Linux. Android is not Linux in the way that matters here: it uses Bionic libc, not glibc, and standard Linux binaries expect glibc. The README lays out the usual workaround as a diagram, a full proot-distro Debian or Ubuntu install sitting on top of Termux, with GNU glibc inside that, and Node.js and OpenClaw inside that. The project's own diagram shows the alternative: the glibc dynamic linker alone, loaded directly by Termux, with Node.js and OpenClaw above it and no distribution underneath. The comparison table gives the claimed difference as 1-2GB of storage for the standard path against roughly 200MB here, and 20-30 minutes of setup against 3-10 minutes. Those numbers come from the README, not from an independent run. The intended user is someone with a spare Android phone, a homelab habit, and no interest in maintaining a Linux userland on it. The repository topics name the audience directly: homelab, low-power, self-hosted, repurpose-phone.
What the installer actually rewrites
The install command is not a package manager call. The README lists six things it does, and each one is a known friction point for running Linux-built Node.js under Termux. It installs the glibc dynamic linker through pacman's glibc-runner. It downloads the official Node.js linux-arm64 build and wraps it in an ld.so loader script, and the README states plainly that patchelf is avoided because it causes segfaults on Android. It converts standard Linux paths such as /tmp, /bin/sh and /usr/bin/env to Termux equivalents. It sets up a temp folder that Android can reach. It configures operation without systemd. And if you select it, it installs OpenCode using proot plus ld.so concatenation for Bun standalone binaries. That last item is worth noting: the no-proot claim applies to the main OpenClaw path, while OpenCode still pulls proot in. The path conversion step is the one most likely to bite later, because any tool that hardcodes /bin/sh at runtime rather than at install time will need the same treatment and will not get it automatically.
Setup commands, in order
Termux must come from F-Droid. The README states the Play Store version is discontinued and will not work, and it walks through downloading the APK from f-droid.org and allowing installs from unknown sources. Then, inside Termux, install curl with pkg update -y && pkg install -y curl. The README notes you may be prompted to pick a mirror on first run and that any choice works, with a closer mirror being faster. The install itself is a single piped script: curl -sL myopenclawhub.com/install | bash && source ~/.bashrc. After it finishes, the README says the OpenClaw version prints along with instructions to run openclaw onboard, which is the interactive setup step. The gateway then starts with openclaw gateway. Requirements are Android 7.0 or higher with Android 10+ recommended, about 1GB free storage, and a network connection. The README also points at a separate Termux SSH guide for typing commands from a computer keyboard, which matters because the install is the part you least want to retype on a phone screen.
The gateway dies with the SSH session
This is the sharpest constraint in the documentation, and the README flags it twice. Run openclaw gateway directly in the Termux app on the phone, not over SSH, because the gateway stops when the SSH session disconnects. There is no systemd here, and the installer explicitly configures operation without it, so nothing restarts the process for you. The gateway also occupies the terminal while running, which is why the README tells you to open a new Termux session from the side menu and run the gateway there. Read together, those two points define the failure mode: the OpenClaw gateway is tied to a foreground terminal on the device, and the phone must be configured not to kill it. That is why step one of setup is Developer Options, Stay Awake, charge limit and battery optimization, with a link to docs/disable-phantom-process-killer.md. If your mental model of a self-hosted gateway is a background service that survives a dropped connection, this is the wrong tool. The Claw App is the project's answer to that, bundling a terminal emulator and a WebView UI in one APK with a dashboard for gateway control, runtime info and tool management, and the README states it works independently of Termux.
proot-distro is the alternative, and it buys isolation
The direct alternative is the standard path the README diagrams first: install proot-distro in Termux, install Debian or Ubuntu inside it, then install Node.js and OpenClaw in that distribution. The difference in approach is not just size. A proot distribution gives you a conventional filesystem layout, a package manager that expects that layout, and a place to put dependencies that do not have to be patched around Termux paths. The cost is the proot layer itself, which the README describes as slower, plus the 1-2GB and the 20-30 minutes. If you intend to run anything beyond OpenClaw, or you want to install system packages the normal way, the distribution is the less surprising environment. If OpenClaw is the only thing the phone will run, the linker-only approach removes a layer you would otherwise maintain. That is the actual choice, and it is a scope question more than a performance one.
Licence, maintenance and upgrade cost
The repository is MIT licensed, which permits commercial use and modification provided the copyright notice and permission notice are retained. That is a statement about the project's own code, not about OpenClaw, Node.js, Termux or any distribution you might install alongside it, and each of those carries its own terms. The README does not describe an upgrade command, so the documented path back to a newer OpenClaw is not visible in the supplied material. What is visible is the release cadence: v0.3.5 in mid-March 2026, v0.3.6 two weeks later, v0.4.0 at the end of that month, and the last push to the default branch in late June 2026. Three releases in roughly two weeks followed by a quieter period suggests the install script was being corrected quickly during that window, which is consistent with a project whose main surface is an installer that has to keep working against whatever Node.js and OpenClaw ship next. The maintenance cost you are accepting is not in the Java code. It is in the ld.so wrapper and the path conversions, which are exactly the parts a Node.js or OpenClaw update can invalidate.
Who should install this, and what to check first
Take it if you have an Android 7.0+ device, about 1GB to spare, and you want OpenClaw running on hardware you already own rather than on a VPS. The install is one command and the README is unusually explicit about the order of operations. Skip it if the gateway needs to outlive a terminal session, if you are on a device where you cannot change battery optimization settings, or if you want a normal Linux package environment. Before you start, read docs/disable-phantom-process-killer.md and confirm your phone exposes the settings it describes, because the README makes that step one for a reason. Then decide which path you want: openclaw gateway in a foreground Termux session, or the Claw App APK, which the README says installs independently and does not disturb an existing Termux plus oa setup. The one thing to verify after install is that the Node.js wrapper is still resolving through ld.so, since that wrapper is what the whole no-proot design rests on.
Editorial conclusion
Adopt it if you have an Android 7.0+ spare phone, roughly 1GB free, and you are willing to run the gateway in a foreground Termux session on the device itself. Do not adopt it if you need the gateway to survive an SSH disconnect, if you rely on Play Store Termux, or if your workflow assumes systemd. Before committing, open docs/disable-phantom-process-killer.md and confirm your OEM's battery settings can be changed, since the project's own setup step points there.
Community notes