FYI: There’s also AnLinux, Linux Deploy, Termux, tainer, UserLAnd, …
Some of them aren’t maintained anymore. And they don’t necessarily have hardware-acceleration. But don’t all require root and system patches.
Termux works fine get it from F-droid only
I’m not sure why you would need a GUI on a GUI phone
Because many graphical apps don’t run natively on Android. They do on Linux.
eg. a full web browser, proper IDE or more powerful image manipulation program.
what do you mean by full web browsers?
Even though FF Android has been getting closer and closer to having all features of FF Desktop, like Extensions, therefore UA switcher, and a way to pretend to be a desktop browser, I’m still missing full responsiveness settings (ie. pretending the size of your browser is like a tablet) and browser editing tools. The actual FF desktop program, running via Termux in a Linux environment, would have all these features.
and a way to pretend to be a desktop browser,
I don’t think that’s a platform or software problem but rather an issue where the feature-to-bug ratio isn’t worth it.
I’m not saying that Firefox for Android is perfect or that no further development is needed, but using the desktop version of Firefox to guide the development of the Android version is a waste. It needs better feature integration with the platform rather than a 1:1 copy of its desktop variant.
The software you are suggesting are in my honest opinion not worth the squeeze. it’s like asking Bicycle with engine and complaining about it not being efficient as the motorbike. Just use the bike while making bicycle better in it’s own way.
I did not want to suggest those features should be forced into the Android version, the normie user wouldn’t like that anyway, but those are the exact cases where an actual desktop browser, via Termux, is useful.
I’m not sure why you would need a GUI on a GUI phone
Because it’s there.
Hmm… I wonder if I could run pihole in an onboard container and force all my local device traffic through it…
You could use Termux for this. However, you won’t be able to use containers. You would need to either build it from sources or run it in proot. I also think the DNS settings in Android are limited so you may have trouble getting it to work. You would need pihole to listen on a random available port and then somehow get android to send DNS to that port. So it probably wouldn’t work.
However, your welcome to try just make sure you use the F-droid version of Termux.
I’m glad I wasn’t the only one with this idea.
You can probably already do this on Termux, since PiHole doesn’t need graphical acceleration.
Might have to create a proper Chroot though, dunno if their Proot tools would have enough privileges for this use case.I think the tricky part is getting a virtual network interface from pihole that can be properly configured in the Android Settings > Connection & sharing > Private DNS > Specified DNS.
For this to work on the mobile device, you don’t want pihole to make itself accessible on the external network interface, but rather an internal (virtual) interface that Android sees as a valid DNS server so that it can be permanently configured (otherwise you would have to reset the private DNS IP address every time you connected to a new WiFi network, and it would be tricky to get it working on the cell network at all).
I’m not sure if this is possible without running a more complete virtual machine that creates a virtual network adapter. Maybe a VPN app could be abused to redirect Android’s outbound DNS requests to localhost?