Will Linux phones become a viable alternative to the Android/iOS duopoly?
amosbbatto.wordpress.com46 points by amosbatto 2 hours ago
46 points by amosbatto 2 hours ago
No, they won't become a viable alternative:
- Worse compatibility with the millions of Android apps already out there.
- Hardware vendors (outside Apple) all target Android.
- The usability of Android/iOS is far better than non-Android Linux phones.
- The security of non-Android Linux phones is in a bad state (e.g. lacking proper app sandboxing). Heck, even the Android emulation layers that some of these phones have, throw the strong Android sandbox model out of the window.
The answer is very obvious and it is AOSP. Even though Google is trying to close AOSP more (e.g. by not pushing source continuously to the AOSP Git repos and keeping QPR1/3 for themselves), it is still an open source system. Play Services can either be run sandboxed or emulated with microG. AOSP allows alternative systems to hit the ground running, you get great app compatibility, a tested security model, great usability, and support from hardware vendors, including vendors that are alternative friendly (used to be Pixel, now Motorola, Fairphone, etc.). If ever needed, AOSP could be forked and it would still be leagues ahead of non-Android Linux phones.
All the downsides that apply to AOSP-based systems (like things getting blocked by Play Integrity, unlockable bootloaders) also apply to non-Android Linux systems.
The lack of polish is a function of the inability to use the hardware. The hardware is tightly gatekept so competition _cannot_ exist. Regulators are the only ones who can force vendors to distribute documentation for and unlock their hardware.
Once we can actually target the hardware, open source alternatives will be much better than first party options.
You can already see the potential in the open source world.
Linux has Waydroid so Android apps can be run on Linux at full speed without emulation. That means, if you had a Linux phone, you have the entire Android library - the only thing lacking is the launcher. How hard is a launcher to program? It's just Steam's big picture mode.
Other examples of the nice things we can't have; FEX lets you run Steam games on phone hardware. Open source drivers can unlock displayport over USBC. Instantly your phone becomes a thin client / laptop replacement that can play PC games (poorly, but 1080p games are possible).
We are _not allowed_ to do these things. I love OS development and, if I was allowed, I'd make iOS look like janky trash.
What's the viability of regulators requiring such documentation out of vendors? Feel free to extend the scope out to up to 5 years if it does not look viable right now.
I just want a virtual phone on my Android device. Why is this so hard?
So a new phone means just moving the VM. The only unique thing my Android layer has to do is route the internet..
Unless regulators enforce (at the very least) that hardware documentation sufficient to produce open source firmware/drivers must be supplied with that hardware, no - probably not.
Drivers and firmware are the biggest hurdle outside of locked bootloaders for competition in the operating system space.
Examples; Anything Apple (MacBook, iPhone), anything Samsung, anything Google, the list goes on.
There _is_ open hardware, but it has poor performance / battery / build quality and the vast majority of users will not accept that.
IMO "the right to repair software" is essential and this duopoly is a function of explicit monopolistic practices.
Maybe LLMs can help open the "reverse engineering" Pandora's box - but we have yet to see that realised - at least for drivers / firmware
so that's basically we don't know how to make the good hardware, let's force those who know give it to us.
That's one way to look at it. I applaud Apple and co for what they have created, but even drugs have patent expiries, eventually becoming generics.
I'd be fine with that model - let them make money for 5 years recouping their R&D costs, then they must offer documentation so the community can repair / maintain the hardware themselves.
I personally see it as falling under "the right to repair" and selfishly, I know we can do more with the hardware than they are demonstrating. It's endlessly frustrating that we are not allowed to and then the devices just disappear forever.
iOS and Android have an incredible amount of engineering to make them RAM and battery efficient that desktop Linux simply doesn't have.
And its not a case of simply implementing some feature, since all apps have to written with this stuff in mind: apps can be suspended/killed at any time and should be able to restart gracefully, notifications go through a side channel, etc etc
Do these phones have any of this?
Looking at the amount of RAM phones have nowadays I don't know if this is an issue, desktop Linux runs fine with those amounts. Also Android is not really memory efficient so they needed this workaround.
And it doesn't actually work reliably, at least on Android. My wife and I frequently don't get notifications from specific apps, only once we open them. My impression is that the platform just changes too frequently with regards of what you have to do to work well even when you're killed. Also, especially for push notifications, your now at the mercy of Googles service to delvier them to your app (not sure how the open source variants do it)
There is also the problem, that some OEMs add their own "battery optimizations". If you simply don't run anything its indeed very battery efficient... Forcing push notifications through some central service has minimal benefits at best. Open source variants are forced to publish annoying persistent notifications and ask the user to flip some "battery optimization" toggle deep inside the settings to not get killed, of course this often enough changes with Android versions.
Same for us on our Grapheneos Pixels. Notification are a bit of a lottery. But we take that as a feature. People can call if there's an emergency.
It's just closed source drivers stored in private Linux forks (or Apple's code dungeon).
There's nothing inherently special about their optimisations, but hardware is incredibly complex and without documentation, open source drivers cannot be written that are anywhere close to what engineers with hardware docs can build.
Asahi Linux is a great example. It's an unbelievable project but still far from first party Apple drivers.
Once the hardware can actually be used, competition in the OS space will follow.
They have no incentive to offer documentation and competition is bad - so they won't allow that. Regulators must step in here.
Yet
Linux on phones have been around since the late 00s (e.g. through Nokia's efforts). Why would this suddenly change? Heck, even after decades, the battery life of most laptops running Linux is still much worse than Windows, let alone macOS.
I have had several generations of ThinkPads and to this day, battery life is typically ~50-60% of that of Windows, even with all battery optimizations applied. And Windows is terrible compared to Mac or Android/iOS phones.
And I say this as a long-time Linux user (used Linux in some form since 1994). It's just a very hard nut to crack if you miss a certain amount of vertical of integration and coordination across the ecosystem.
We are _not allowed_ to make it good. Without hardware documentation, you're looking at decades of reverse engineering effort just to get somewhere half as far as an engineer with hardware documentation can get in a weekend.
Look at Asahi. Almost a decade in and we can use the GPU at like 30% of its ability on 6 year old hardware.
That a project with major interest. No one cares about spending a decade reverse engineering the hardware on a Google Pixel or Samsung Galaxy.
If they gave us proper full hardware documentation, we could create high quality alternatives. Again, we can't so you don't see it.
Competition is good. We should always advocate for things that enable competition.
> Without hardware documentation, you're looking at decades of reverse engineering effort just to get somewhere half as far as an engineer with hardware documentation can get in a weekend.
I'm not sure this is true anymore and it is becoming less true with each new LLM release.
> No one cares about spending a decade reverse engineering the hardware on a Google Pixel or Samsung Galaxy.
Actually, this might a cool idea - just get a few super cheap smartphones, connect them all to a PC, give LLM access and tell it "make linux gud like android pls" and just give it a weekend.
> Why would this suddenly change?
I see three aspects there.
The first is that google is currently rugpulling via various means and _really_ playing those anticompetetiveness-cards. That wasn't the case previously. So there wasn't much motivation to care, because android was "open enough".
The second is that the world is getting less geopolitically stable. So the whole ecosystem lockdowns are not just a personal preference thing but might be actually vital.
The third is that LLMs are kinda good at these optimization loops if you hand them a framework in which they can sample good data.
I also had a fourth thought but it left my mind :(
> iOS and Android have an incredible amount of engineering to make them RAM and battery efficient that desktop Linux simply doesn't have
This one of the most understated reasons.
If you look at ARM, SBC and MiniPC market, Linux can be very frugal when it comes to power management and RAM use. Just because a bog standard Ubuntu or Debian is not tuned towards it doesn't mean it can't.
Yes. And I would argue that in the form of the Sailfish OS devices.from Jolla, they already are a viable alternative.
If i will not able to get in control of the device, at least as much as macos level, and still able to make contactless payments, approve online payements, breaking the duopoly will not matter much for me.
Maybe i should aim for a second smallest possible android phone just for banking to set my mobile computing free. (İ was already tried using unihertz jelly star as my daily driver for a while)
Inevitable given that a lot of dev entrepreneurs are moving from high level CRUD to low level software, CAD and hardware now with AI. But it might move beyond Linux once AIs come up with their own programming languages.
The way things are going, these will become the only viable option for an independent device.
Linux phones sounds like so much to miss if not having one! I wonder why its not already out?
Kinda had them with jailbroken iphones.