4 ms·
The "write-or-execute" policy causing this havoc is remarkably similar to what is being done with WebExtensions v3 banning any dynamic code execution. Termux wa
by rektide 4y ago
The "write-or-execute" policy causing this havoc is remarkably similar to what is being done with WebExtensions v3 banning any dynamic code execution. Termux wants to be able to bring down code & let users run it, but that's verboten. Similarly, all WebExtensions will be forbidden from bringing down code (or accepting user entered code).
That sounds fine/good for like 98% of extensions. But the other 2%... extensions like GreaseMonkey/VioletMonkey/TamperMonkey, or one could imagine something like IFTTT or PushBullet, where the extension might perhaps want some intrinsic extensibility to itself: those are all now verboten. There's not really any discussion or push/pull on the new security regimes. Computers just get more and more clamped down.
I'm interested to see how Termux goes forward. In the past they seemed to have some "in-APK packaging" notions for how to deal with Android 10+. I haven't stumbled upon a good description of what this is or how it would work, and I'm not really sure whether these ideas are still active or whether F-Droid and using ever aging SDKs is the way forward.
- jeroenhd 4y agoTermux still works fine on any Android device, all you've got to do is install it through F-Droid or similar. Google Play is the party blocking W+X, Android itself will happily execute your downloaded binaries (for now, at least). There are also other APIs that are absolutely verboten by Google Play but will work fine if the app is installed through alternative app stores.
- pjmlp 4y agoNope, Android started to ban linking to native APIs that aren't officially part of the NDK, like Linux syscalls. More recent versions will just kill the application if they get used, and Termux folks refuse to accept that they have to go through JNI for specific OS features, so they won't be around for much longer, other than on rooted devices. Or they might eventually accept how things are done on Android.
- danhor 4y agoSince termux just uses regular unix applications, adapting them to use JNI sounds like a world of pain.
- pjmlp 4y agoThat is what they refuse to accept, Android isn't UNIX, it just happens to use Linux kernel. The official APIs are Java based, ISO C and ISO C++ standard libraries, and the NDK libraries that ship on device.
- nyanpasu64 4y agoGoogle is killing Android as a general-purpose computing platform.
- pjmlp 4y agoPhones were never a general-purpose computing platform to start with.
- yjftsjthsd-h 4y agoThat's begging the question; the only reason phones aren't general-purpose computers is because Google and Apple tend to block out anything that would let the user actually use the computer as more than a toy.
- pjmlp 4y agoMobile phones preceed Google and Apple, including the whole concept of stores and selling apps. Series 30, Series 60, brew, J2ME, Psion OS, Pocket PC,.... They were never general purpose computers.
- rektide 4y agoPocket PC/Windows CE/Windows Mobile all seem far more like examples of phones trying really hard to be general-purpose like, rather than examples of phones being different. And getting fairly close. Personally I think it's hard to justify phones as something different than general purpose computers. A device that can load fairly arbitrary apps is already almost by definition a general purpose computers, it's just a matter of what has been built and/or what is allowed to be shipped, and what system resources are available (few, in many of your examples, often owing to it being the aughts). Now that the system resources are clearly no longer a differentiator, it's almost all just corporate-politics & the war-against-general-purpose-computing vested-interests enforcing the distinction.
- yjftsjthsd-h 4y ago> Or they might eventually accept how things are done on Android. Given that the way you say "things are done on Android" is that tools like termux don't exist, you're effectively saying they should just give up and kill the project. I understand that this is consistent with your view of the OS, but can you understand why nobody involved is interested?
- pjmlp 4y agoOn the contrary, they should embrace the way Android applications are supposed to be written.
- Gigachad 4y agoI think this is not the worst situation. Downloading executable code is very rare in normal use cases and is extremely common and powerful for malware. For the common user, its better to just turn this off. And for the power user, they are free to sideload apps that can do whatever they want.
- R0b0t1 4y agoThe problem is you can't actually turn it off like you think you should be able to do. As well, you should expect feature parity (automated updates and so on) with the R^X turned off.