Skip to content

Comments

fake root container #4979

Open
0m364 wants to merge 4 commits intotermux:masterfrom
0m364:master
Open

fake root container #4979
0m364 wants to merge 4 commits intotermux:masterfrom
0m364:master

Conversation

@0m364
Copy link

@0m364 0m364 commented Feb 20, 2026

fake root container

google-labs-jules bot and others added 4 commits February 20, 2026 06:08
This adds a "Fake Root" checkbox to the new named session dialog.
When enabled, the session is started with `proot -0`, which emulates
root privileges (UID 0). This requires the `proot` package to be installed.

This involves:
- Adding `isFakeRoot` to `ExecutionCommand`.
- Wrapping the command in `proot` in `TermuxSession`.
- Propagating the flag through `TermuxService` and `TermuxTerminalSessionActivityClient`.
- Updating the UI in `TermuxActivity`.

Co-authored-by: 0m364 <13804150+0m364@users.noreply.github.com>
Downgrades invalid/future versions of GitHub Actions to stable versions.
- gradle/actions/wrapper-validation@5 -> @V3
- actions/checkout@v6 -> @v4
- actions/setup-java@v5 -> @v4
- actions/upload-artifact@v6 -> @v4

Co-authored-by: 0m364 <13804150+0m364@users.noreply.github.com>
Updates invalid versions of GitHub Actions to valid/stable versions.
- gradle/actions/wrapper-validation@5 -> @v4
- actions/checkout@v6 -> @v4
- actions/setup-java@v5 -> @v4
- actions/upload-artifact@v6 -> @v4

This fixes errors where actions could not be resolved or had network timeouts on old versions.

Co-authored-by: 0m364 <13804150+0m364@users.noreply.github.com>
@sylirre
Copy link
Member

sylirre commented Feb 20, 2026

Could you give some practical examples where fake root is useful?

@0m364
Copy link
Author

0m364 commented Feb 20, 2026

installing packages in termux that request root access without need for proot or opening the android system via root ...some tools request this

@sylirre
Copy link
Member

sylirre commented Feb 20, 2026

Give practical examples. What tools? What do you meaning by opening the android system via root?

Features added to the app must be useful for most users. It shouldn't be something niche, like bypass root check in specific script from GitHub. It is not hard to type proot -0 bash on the command line when user really needs it.

So I would like to know what we miss without Fake Root session.

@0m364
Copy link
Author

0m364 commented Feb 20, 2026

Give practical examples. What tools? What do you meaning by opening the android system via root?

Features added to the app must be useful for most users. It shouldn't be something niche, like bypass root check in specific script from GitHub. It is not hard to type proot -0 bash on the command line when user really needs it.

So I would like to know what we miss without Fake Root session.

i personally use it for running agent based local llms like opencode directly in termux ... it would also allow users who build lfs to do so in their phone without the lag of nested vm .. would also open up to testing shells ... i meant rooting/jailbreaking the system

@sylirre
Copy link
Member

sylirre commented Feb 20, 2026

i personally use it for running agent based local llms like opencode

Local llms never required fake or real root permissions.

it would also allow users who build lfs to do so in their phone without the lag of nested vm

LFS (if you meant Linux-from-scratch) would require a full fledged proot setup. Using proot -0 <shell> alone won't help because it only impersonates current user as root.

Furthermore, usage of proot would actually make performance worse.

would also open up to testing shells ... i meant rooting/jailbreaking the system

It doesn't help with rooting or jailbreaking the system because as said previously, proot only impersonates current user and that has effect only for proot child processes. The kernel still sees the original user name because proot can't hijack value in its memory space. No process permission attributes being changed.

@0m364
Copy link
Author

0m364 commented Feb 20, 2026

i personally use it for running agent based local llms like opencode

Local llms never required fake or real root permissions.

it would also allow users who build lfs to do so in their phone without the lag of nested vm

LFS (if you meant Linux-from-scratch) would require a full fledged proot setup. Using proot -0 <shell> alone won't help because it only impersonates current user as root.

Furthermore, usage of proot would actually make performance worse.

would also open up to testing shells ... i meant rooting/jailbreaking the system

It doesn't help with rooting or jailbreaking the system because as said previously, proot only impersonates current user and that has effect only for proot child processes. The kernel still sees the original user name because proot can't hijack value in its memory space. No process permission attributes being changed.

yes.... i know .. this avoids the latency with proot... llm chatbots do not require root ... but agents and sub agents ... unless fine tuned for termux .. will refuse what they see as a sudo command ... the fix for this is to have them create an "askpass tool" on the fake container you make... this allows the agent to control a sub agent on standard termux .. allowing control of termux api controlled actions with natural language

@DeezDevelopes
Copy link

DeezDevelopes commented Feb 20, 2026 via email

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants