*Article has had a few revisions since initial publishing after reader feedback, noted with a ‘*’ *
Ahh, Mobile Linux, a great step to Linux being used more and more by everyday people!
At least, it should be.
2020 brought us a lot of things, not much of which was good. One thing we got that was appreciated, was the explosion of Mobile Linux (hereby abbreviated as ‘ML’) distributions, development, and dedicated hardware!
- The Librem 5 from Purism
- The FXTec-Pro from XDA
- The Pinephone from Pine64
- The Vollaphone from Volla
- The Cosmo Communicator from Planet Computers
- The upcoming Jingpad A1 from Jingling
- The Steam Deck, anyone?
Linux nerds and devs are starting to actually receive the hardware we’ve been begging for, but that hardware is so fresh from the oven, it’s burning some devs hands! (I know, excellent euphemism 🤣)
I cant speak for every other nerd or developer, but I can at least speak for myself, and boy do I have some things to say.
First and foremost, criticism for the hardware manufactures –
Some of you do not have a good concept of what modern hardware is or what a lot of modern game development requires for hardware resources.
*When I say modern games, I want you to know I’m thinking of graphically intense games like Fortnite, HearthStone, and Genshin Impact.
2-3 gigs of ram is NOT ENOUGH!!!!
It never will be again, and insisting developers try and struggle through because you couldn’t bother spending time to design a modern piece of hardware is just.. I don’t know, I bet my feelings are evident though.
*A concession: Maybe, *maybe*, if you can reduce the OS load enough and make sure the system isn’t hogging all the resources, you may be able to get away with this little, but the OS’s need to be well optimized, and the apps being loaded need to have light footprints.
The processors being used are.. meh. A lot of them should be newer than what they are if we’re being honest with ourselves here.
*As another blog mentioned at one point, it is true that the amount of RAM that can be used on a motherboard is limited by the CPU on said board, and many newer arm CPUs still lack good Linux kernel development, making the production of better hardware another layer more difficult. It would be a nice development to see more work being done on Linux support for newer and better CPUs.
Plastic. Why?? This one is a lot less important honestly and is more a personal nit-pick, but please, stop making giant plastic bricks, it isn’t 2013, and it’s not a Nokia (and if it is, I want to see!).
Price-point – Many manufactures are aware that linux fans usually get no love from hardware OEMs, and seem to be exploiting that a bit by charging much more than the hardware’s actually worth.
*A secondary concession / acknowledgement: I can understand an increased price-point when your market is tiny, or if your hardware is nice enough to warrant the increase.
And that’s it for the Hardware manufactures.
All right OS devs, I see ya trying to sneak out, sit down and get ready to read.
So. ML OS devs. You know I love you. We know you’re trying, but what are you doing?
SO many of you don’t have a clue what to focus on!
-Insert objection here-
I know, I know, you’ve been hard at work building a bootable image, and this is more for the ones with complete and working images
(so like, four of you?) *Okay, it’s more than four of you, but I do believe many of you have a lot of room for improvement.
You’re probably used to building Desktop OS’s, and that experience is gonna be useful, but so many of you forget: This isn’t a desktop. It’s a phone. Many of you seem to be designing with the idea the end users will be using their phones docked, but my question to you is: Why would we be? It’s a phone.
“Cara, what’s your point?”
My point is this –
Build Mobile apps
Build dedicated SDK’s for your distro, that ANYONE can use,
not just neck-beards (if that makes you mad, you outed yourself). *People online responding with anger and lack of knowledge can be very infuriating, but I suppose calling them names isn’t very constructive either.
There’s no good reason a kid learning to code a Windows app shouldn’t be able to just as easily learn for Linux / your OS too.
*A begrudging concession: even a unified SDK for arm64 Linux development would be fantastic. Better yet would be a game engine with all the needed export options built in, ML desperately needs comprehensive documentation and how-to’s aimed at new developers, not just senior devs.
Releasing broken / incomplete OS’s
*Not Working On The Basics
*(wording my input better)
*I’ll specify: You need to focus on phone-functionality, and making sure devs projects will load on your system and that it doesn’t lack obvious dependencies.
*A clarification to what I mean when I say broken / incomplete OS’s; Once you have a semi-working image with community interest in developing it further, you need to make sure you ML OS has basic functionality before getting distracted by less important features.
If your OS doesn’t make phone calls and texts, and can’t access the web via cellular, than it’s not a ML distro for a phone (*yet). You need to focus on getting all the basics working.
Speed. If your OS is too slow, no one will want to use it as a daily driver.
*System overhead and resource usage: on a device with only 2-3 gigs of ram, your system can’t be using two thirds of it while idle.
You should always clarify:
“hey, my OS uses these packaging systems, you can build with this, this, or this, and if you are more of a game engine developer, these engines support exporting to a compatible arch: game engine here”
Right now, a lot of you are laying down concrete foundations and calling it a house. *You’ve all got a ways to go till a majority of people would agree your images are ‘Complete’ don’t give up hope, just make sure to focus on the most important tasks first!
I think that’s about it honestly.
So yeah, I bitched a lot, so lets condense everything:
Don’t price gouge (if you can afford not to)
Build modern hardware (or optimize the hell out of your systems)
Listen to consumer feedback, don’t just do whatever you want to do.
*This point stands stronger than ever: Without a community and steady flow of new developers, projects die. Be nice, be helpful, or expect failure sooner than later.
Mobile Linux OS Devs –
Build Mobile Linux apps
*don’t only focus on docking-based apps, a phone should be a phone first unless it’s only for IT. It’s a great feature, but should be focused on a bit less than touch-oriented apps right now.
Users aren’t gonna always want to dock their phones.
*Maybe eventually, but for now, again, focus on making a phone first.
Clarify and create guides (UNDERSTANDABLE GUIDES)
Necessary for new people to build apps for you. If it’s too hard to figure out, no one will want to develop for you, as we’ve kinda historically seen.
And just so we’re not ending on too sour of a note, I would like to actually praise as few OEMs and ML OS devs!
Excellent hardware, 0 complaints at all. * This is an excellent example of Hardware and price-point being perfect and fair, IMO.
This is a great price-point for the hardware you get, for $150 – $200, you can’t complain tooooo much. Though I hope we see improved products in the future as chip supply lines start getting back to usual capacity.*
Manjaro Plasma Arm:
WOW! This distro is looking great! You guys seem to understand the need to make Linux phone-ready OS-wise, but you still suffer from a few of the problems I mentioned. *Specifically, too much overhead system recourse usage while idle.
An after thought –
I think the upcoming Jingpad A1 is going to address almost all of these concerns with their product from the looks of it; and I think more open source ML projects should watch what they do.
Thanks for reading everyone!
For anyone reading this and getting mad:
An Open letter is a piece of constructive criticism meant to be read by involved parties. If this angers you, that’s truly unfortunate. If you feel the need to reply and tell me how awful and dumb I am, please don’t. If you liked it at all, than thanks for reading and I hope ya tune in again! Have a good day everyone!