[SOLVED] Will Linux Phones ever become commercially viable and decrease to a price point of 200-400 USD?
Don't say, hey android has Linux in it, yeah no, idc, I want to know how far we are from buying a Linux phone at a price point of 200 USD.
A Linux phone is one which is built completely on Linux, uses Linux apps and most important has a terminal.
I don't want a Linux Phone for privacy, although that's a great reason, but I want it for the freedom it provides me. Hell, I don't care if Android itself comes with a terminal and has similar features to Linux, I just want a Terminal which can install apps, where I can write commands and it will execute it. Complete Control on my phone and how it behaves is what I want.
I want to tell it when to sleep, when not to sleep, when to boot, when to edit a file and how, when to take a screenshot and what to do with it and where to save it, etc, etc. I hope you get the idea.
Yes, no, maybe, depending on what exactly you mean.
A phone that is comparable in specs to a similarly priced Android and runs native Linux without tricks: This is not going to happen ever.
An Android phone that can be hacked into running Linux with tricks: Yeah, that exists, but it's DIY. There are a lot of cheap phones that you can e.g. install PostmarketOS on.
A phone that runs native Linux without tricks for that price point: Yeah, that's called a Pinephone, and it's pretty much that.
There are two main issues, why a Linux phone with good specs and without tricks and with full, real Linux is impossible:
Linux phones got a tiny market share and due to the natural monopoly of operating systems and app stores, that's not gonna change any time soon.
SoC manufacturers have a different way of working than PC part manufacturers. For example, they won't upgrade the Linux kernel/drivers necessary. Because of that, my phone (Fairphone 4), which came out in 2021 and runs Android 12 still uses the 4.19.157 kernel, even though 4.19 came out in 2018. And even of the 4.19 version, the newest revision is 228, and I'm still running 157. They didn't even bother upgrading the revision number. Stuff like that doesn't fly on decent native Linux. And SoC manufacturers will not support newer kernels if it's only for <3% of the market share or some miniscule number like that.
What causes the situation currently is not ARM, but the companies making SoCs.
Currently, with RISC-V, we are seeing early-adopter trial runs by early-adopter companies. None of the usual suspects have any amount of serious skin in the game.
When Qualcomm is making mass-market high-performance RISC-V SoCs, they will treat them exactly the way they are treating their equivalent ARM SoCs right now.
Tbh, if we are unlucky, RISK-V might even get worse than ARM.
The point of RISK-V is to get rid of ARM ltd., the company that manages the ARM ISA and the reference designs, and asks for a lot of money from companies that want to use ARM.
RISK-V was made to have an ISA without such a middle man.
The issue here is that (apart from some university researchers) nobody makes freely available reference designs.
If a company wants to make their own high-performance ARM SoC, they call up ARM, pay a lot of money and get some directly usable reference designs. They maybe configure it with the features they want and then send the design to e.g. TSMC and they build it. Apart from a lot of money, not much else is necessary.
With RISC-V, there is no such instance where you can buy great reference designs from.
Instead, each company designs their own designs. Maybe some will sell their designs, but it might well be, that the top companies will just not share their designs, same as is the case currently with x64, where you can buy a ready-made AMD/Intel SoC and that's it.
Termux is the best i could get. You can run a lot of apps, compile with clang; use vim, emacs and nano; run XFCE with the help of X server(maybe running locally ny XSDL app), run proot distros like ubuntu debian arch and all, use ffmpeg, and with extension apps like Termux:API you can use more android permission to do things like initiate a call with a command. You may use termux:widget and termux:float or maybe even termux:boot and do a lot of things there
If you want just an user-land mostly-compatible system, that's pretty much it.
You can use Termux which proots if you don't have root.
If you have root, you can use something like Linuxdeploy (which is seriously outdated, but if you know what you do, you can update the Linux installation in there). This gives you a chroot-based Linux with shell and GUI over VNC and root. It's able to play almost everything you want.
On my installation (Ubuntu 22.04 with XFCE) I even got FEX to work, which allows me to run x86/x64 Linux programs. Then I installed x64 Wine and now I can run Windows x64 apps on my phone.
You can toss BusyBox on Android and have most of the commands you are used to. It has been a long, long time since I have done Android development (Android 7 was the last version I developed on), but back then, Android didn't have bash. It was ash. So very similar, but you are missing some things.