Live data from Hacker News

Termux and Android 10

github.com

291–300 of 329 posts

Re: Termux and Android 10

#291

Earlier quoted context omitted.

Your cheap Samsung phones are not running open firmware with mainline Linux, nor have hardware kill switches. A PinePhone/Librem 5 will also always be capable of running emacs/golang etc. which is not easily doable on Android if termux isn't possible anymore.

> A PinePhone/Librem 5 will also always be capable of running emacs/golang etc. which is not easily doable on Android if termux isn't possible anymore. So can a phone running Lineage. The thing blocking termux is a config file; any phone that isn't locked down can handle it. You're not getting all of the openness for free, but you can get a lot of it for free.

I think it's important to point out that you'll always rely on proprietary blobs and generally hostile hardware that way.

For now it's a config. As these things progress and get more locked down with each release in the name of security, it's going to be harder and harder and I don't want to scramble the moment it is practically impossible. I'd rather push for a free, open, libre hardware now so that the polish is there when there's no alternative.

Re: Termux and Android 10

#292

Earlier quoted context omitted.

> A PinePhone/Librem 5 will also always be capable of running emacs/golang etc. which is not easily doable on Android if termux isn't possible anymore. So can a phone running Lineage. The thing blocking termux is a config file; any phone that isn't locked down can handle it. You're not getting all of the openness for free, but you can get a lot of it for free.

I think it's important to point out that you'll always rely on proprietary blobs and generally hostile hardware that way. For now it's a config. As these things progress and get more locked down with each release in the name of security, it's going to be harder and harder and I don't want to scramble the moment it is practically impossible. I'd rather push for a free, open, libre hardware now so that the polish is th…

> As these things progress and get more locked down with each release in the name of security

If that actually happens.

I haven't seen any downward trend of LineageOS. I haven't seen any downward trend of Samsung hardware.

Re: Termux and Android 10

#293
post #195

Earlier quoted context omitted.

The only "real" solution is to get an actual Linux phone, such as the PinePhone[1] or Librem 5[2]. 1 - https://www.pine64.org/pinephone 2 - https://puri.sm/products/librem-5

Unfortunately these tiny side projects are not the answer. They'll never get traction because they're not better devices. The answer is to either hack Android/iOS so you can patch out all the bundled bs or to regulate them and force them to offer a "clean" OS version.

Unfortunately, by doing so you'll always rely on proprietary hardware blobs and hostile vendors who will make it harder to patch whatever you want to patch with each release in the name of "security" and will never offer anything close to an actual GNU/Linux experience on a phone.

I also don't see how a process that requires rooting, patching etc, is any more prone to mainstream adoption than an actual Linux phone.

The thing is, if one wants to move a cause somewhere, it may require some inconveniencing at the start for the long-term vision to pan out.

Working with GCC was surely a bit painful at the start of the 90s, but it was worth it for the goal of having a free software stack on the desktop and now it's time to do the same for the phone.

Re: Termux and Android 10

#294
post #279

Earlier quoted context omitted.

Any Android phone can do so much more on the software side. One just needs to treat them as Java based OS that happens to allow native code for high performance 3D graphics, real time audio and integration of C and C++ libraries.

Can they? You cannot reasonably run any mainstream compilers, editors etc. on Android phones. Nor can you develop Android apps on them, (without something like Termux), nor do a gazillion other things you can do on your PC. They're at best crippled pocket computers, whereas something like the PinePhone runs mainline Linux and can run KDE Plasma/GNOME etc. Does Android have more simple podcast apps and the like? Sure.…

Sure you can, provided you treat them as a Java based OS, as mentioned.

If anything fails, you are free to implement your own.

GLSL editor

https://play.google.com/store/apps/details?id=com.id11688025...

C# development environment

https://play.google.com/store/apps/details?id=com.radinc.csh...

Python development environment,

https://play.google.com/store/apps/details?id=ru.iiec.pydroi...

Java and C++ development environment

https://play.google.com/store/apps/details?id=com.aide.ui&hl...

Terminal like app

https://play.google.com/store/apps/details?id=com.csgroup.te...

Just because one cannot use GNU/Linux command line it doesn't make it less usable.

My aging Asus travel netbook is most likely going to be the last hardware I deploy GNU/Linux on.

Re: Termux and Android 10

#295

Earlier quoted context omitted.

Termux allows you to apt install thousands of packages. The options in that issue aren't nearly as good. Bundling every binary in the apk? That would be a breach of licenses, let alone the amount of storage that would take up to have gimp, libreoffice, Firefox, etc installed. As mentioned, proot is a temporary hack (why wouldn't any app just stick proot in their lib Dir?). Even if the workaround works, this would bre…

> Google's intent here is to block code execution in the app home Dir Google's actions are to block exec of writable code. What their _intentions_ are is pure speculation and detracts from the actual issue. Your claim is largely unsubstantiated & lacks evidence, particularly as Google recommended ways to continue to do exactly what you claim they are intending to block. > The options in that issue aren't nearly as go…

That is not at all what happens. W^X is not the problem. W^X is already enabled by default. Executable pages are not mapped in as writable even if the image file is writable. The security argument is bullshit.

The problem is that they don't want you mapping code from anywhere other than your strictly read only .apk.

There is no workaround proposed there other than shipping every single piece of executable code with the .apk.

Sure, you can workaround right now with proot or the like by creating your own executable loader, but who guarantees this works with Android 11? It is also a violation of their policy.

In fact, what they are saying there is that eventually fork and exec are going to be deprecated because they disalign with the Android process model.

Re: Termux and Android 10

#297

Impact of Android 10 on Termux usability is already old news. What worries me more is behaviour of Termux developers. They make dubious claims and effectively sabotage their own application (more on that below). The solution to Android 10 problems — a software wrapper called "proot" [1] — has already been found. That solution would allow to keep all of Termux functionality and preserve existing package managers (such…

There are _already_ several "Linux-like environments" on Android that use proot. GNUroot, UserLAnd, Linux Deploy, AnLinux, Androlinux, etc.

Some of them _literally_ just package existing Linux distros such as Debian (e.g. GNUroot) in a way thatis much more compatible and easier to mantain than something ad-hoc such as Termux.

Termux became popular _precisely_ because they did NOT use proot. Proot is great in theory -- using ptrace and hooks in order to simulate a more Linux-like environment, ala Cygwin. In practice, it is just goddamn slow, and ptrace just introduce MORE compatibility issues than the native Android does.

Termux had a shitton of disadvantages compared to the proot-based distributions, such as for example the fact that every package had to be patched in order to use the non-standard Android directory structure, making compatibility with native Linux binaries utright difficult (not even ld is where it should be) and reusing Linux distro scripts impossible. But _still_ it became the most popular because proot is just worse.

No wonder they completely ignore all requests to use proot.

If you want to use proot, there is no point at all for Termux to exist (or at least, for Termux the distro; the terminal emulator itself may still be interesting, your mileage may vary). There's little point remaining for patching packages for Termux; you can use Debian packages, so just go and use Debian.

And to to top it off, what if a future Android breaks proot, which looks likely?

Re: Termux and Android 10

#298
post #294

Earlier quoted context omitted.

Can they? You cannot reasonably run any mainstream compilers, editors etc. on Android phones. Nor can you develop Android apps on them, (without something like Termux), nor do a gazillion other things you can do on your PC. They're at best crippled pocket computers, whereas something like the PinePhone runs mainline Linux and can run KDE Plasma/GNOME etc. Does Android have more simple podcast apps and the like? Sure.…

Sure you can, provided you treat them as a Java based OS, as mentioned. If anything fails, you are free to implement your own. GLSL editor https://play.google.com/store/apps/details?id=com.id11688025... C# development environment https://play.google.com/store/apps/details?id=com.radinc.csh... Python development environment, https://play.google.com/store/apps/details?id=ru.iiec.pydroi... Java and C++ development envir…

> provided you treat them as a Java based OS

This topic is about Termux, an app that aims to provide a Linux environment on Android.

I can treat it as a "Java-based OS", but then I don't get the benefits of real Linux so am not sure what the advantage is.

My dumb phone was also "a Java based OS", iOS is just an "ObjC/Swift based OS" etc. The only thing this mindset does is to ignore the restrictions by giving into them and am honestly not sure why would one do that.

> Just because one cannot use GNU/Linux command line it doesn't make it less usable.

Sure it does, this very topic is about an app that does precisely that. If one doesn't need that, they didn't need Termux and thus of course this whole topic does not apply to them.

Re: Termux and Android 10

#299
post #77

I ordered a PinePhone the other day and I'm going to do as much as I can to try and make it my daily driver. I really can't be arsed with this stuff any more. Why are the developers at Google acting in such boneheaded ways? Is it literally just "I get paid loads of money, lol"? Do people not grow out of that eventually when they have enough? Like, you're literally a developer. Why would you make something you wouldn'…

> Why are the developers at Google acting in such boneheaded ways? (I'm a developer at Google, but I'm not on the Android team and am definitely not providing any sort of official response here - this is personal opinion and may be inaccurate) If apps can download arbitrary code and then execute it, they can bypass the validation that's done as part of the Play Protect program. My understanding is that there's plenty…

Until all execution of foreign code is blocked (like Apple), then all that Android does is to add a bit of nuisance to malware, as they can no longer download the actual payload to disk but have to download the payload to memory and execute it from there. Not really a big deal for a malware author, but likely a dealbreaker for a Termux-like program.

And if Android implements a policy like Apple's to block all execution of foreign code (which is the apparently inevitable conclusion of this type of security arguments), then browsers and everything else will be gone, exactly like Apple (for the record, where every browser is just a wrapper over Webkit).

I used to think that Android was more open than iOS based on principle, but now I realize that no, it was more open than iOS just because they lacked the technical means to enforce the draconian restrictions.

Re: Termux and Android 10

#300
post #294

Earlier quoted context omitted.

Sure you can, provided you treat them as a Java based OS, as mentioned. If anything fails, you are free to implement your own. GLSL editor https://play.google.com/store/apps/details?id=com.id11688025... C# development environment https://play.google.com/store/apps/details?id=com.radinc.csh... Python development environment, https://play.google.com/store/apps/details?id=ru.iiec.pydroi... Java and C++ development envir…

> provided you treat them as a Java based OS This topic is about Termux, an app that aims to provide a Linux environment on Android. I can treat it as a "Java-based OS", but then I don't get the benefits of real Linux so am not sure what the advantage is. My dumb phone was also "a Java based OS", iOS is just an "ObjC/Swift based OS" etc. The only thing this mindset does is to ignore the restrictions by giving into th…

Except Linux kernel on Android is heavily modified, nowadays it even has a microkernel like architecture thanks Project Treble and Modular System Components, where only ISO C, ISO C++ standard libraries and the Android Native APIs are guaranteed to exist across devices.

Android 12 could be released with Windows, NuttX, BSD, Fuchsia kernel and hardly anyone that has kept using Java or NDK official APIs would hardly notice other than OEMs.

Anyone looking at it as Linux is only fooling themselves.

GNU/Linux has lost its mobile OS/desktop opportunity. Every major company will just pick the Linux kernel, tailor it at their own will and place their beloved userland on top.

And on the servers I give it like 10 years more for it to be made mostly irrelevant for managed runtimes being deployed on cloud environments running on type 1 hypervisors.

Post reply on HN