this post was submitted on 23 Sep 2024
64 points (88.1% liked)

No Stupid Questions

35389 readers
1072 users here now

No such thing. Ask away!

!nostupidquestions is a community dedicated to being helpful and answering each others' questions on various topics.

The rules for posting and commenting, besides the rules defined here for lemmy.world, are as follows:

Rules (interactive)


Rule 1- All posts must be legitimate questions. All post titles must include a question.

All posts must be legitimate questions, and all post titles must include a question. Questions that are joke or trolling questions, memes, song lyrics as title, etc. are not allowed here. See Rule 6 for all exceptions.



Rule 2- Your question subject cannot be illegal or NSFW material.

Your question subject cannot be illegal or NSFW material. You will be warned first, banned second.



Rule 3- Do not seek mental, medical and professional help here.

Do not seek mental, medical and professional help here. Breaking this rule will not get you or your post removed, but it will put you at risk, and possibly in danger.



Rule 4- No self promotion or upvote-farming of any kind.

That's it.



Rule 5- No baiting or sealioning or promoting an agenda.

Questions which, instead of being of an innocuous nature, are specifically intended (based on reports and in the opinion of our crack moderation team) to bait users into ideological wars on charged political topics will be removed and the authors warned - or banned - depending on severity.



Rule 6- Regarding META posts and joke questions.

Provided it is about the community itself, you may post non-question posts using the [META] tag on your post title.

On fridays, you are allowed to post meme and troll questions, on the condition that it's in text format only, and conforms with our other rules. These posts MUST include the [NSQ Friday] tag in their title.

If you post a serious question on friday and are looking only for legitimate answers, then please include the [Serious] tag on your post. Irrelevant replies will then be removed by moderators.



Rule 7- You can't intentionally annoy, mock, or harass other members.

If you intentionally annoy, mock, harass, or discriminate against any individual member, you will be removed.

Likewise, if you are a member, sympathiser or a resemblant of a movement that is known to largely hate, mock, discriminate against, and/or want to take lives of a group of people, and you were provably vocal about your hate, then you will be banned on sight.



Rule 8- All comments should try to stay relevant to their parent content.



Rule 9- Reposts from other platforms are not allowed.

Let everyone have their own content.



Rule 10- Majority of bots aren't allowed to participate here.



Credits

Our breathtaking icon was bestowed upon us by @Cevilia!

The greatest banner of all time: by @TheOneWithTheHair!

founded 1 year ago
MODERATORS
 

Android phones for example

all 43 comments
sorted by: hot top controversial new old
[–] BradleyUffner 98 points 5 days ago (4 children)

I guess I'm going to be that guy today. Android is Linux, and it's installed on a lot of mobile devices already.

[–] mkwt 27 points 5 days ago* (last edited 5 days ago) (1 children)

Another aspect to this is that Android is Linux, but it is not GNU / Linux. This is true both in the literal sense of not using GNU coreutils or glibc, and also in the broader sense.

What I mean by the "broader" sense:

  • no X or Wayland
  • GTK or Qt support is something an application has to bring with them.
  • filesystem is substantially reorganized
  • users and system permissions setup substantially differently

To the application programmer Android / Linux looks like a completely different ball game.

[–] [email protected] 13 points 5 days ago (1 children)

And you can (sometimes) install something like PostmarketOS which is closer to the kind of linux people think about when they hear "Linux"

[–] [email protected] 7 points 5 days ago (1 children)

PostmarketOS isn't "closer"... It fully is GNU/Linux.

[–] [email protected] 4 points 5 days ago

You are correct. His statement wasn't about technology, it was about expectations.

[–] [email protected] 4 points 5 days ago (3 children)

Android is maintaining a fork of Linux kernel that has since diverged.

Its like saying MAC is UNIX, technically yes but not really

[–] dohpaz42 24 points 5 days ago (2 children)

Its like saying MAC is UNIX, technically yes but not really

macOS is UNIX-based. Period. In fact, “[s]tarting with Leopard, macOS has been certified as compatible with the Single UNIX Specification version 3 (SUSv3).” Source

[–] [email protected] 7 points 5 days ago (1 children)

Exactly Android also is "Linux based" period.

That's my point.

[–] ForgotAboutDre 2 points 4 days ago

Mac isn’t UNIX based, it is UNIX and comes with many of the UNIX tools a user would expect. Completely different situation.

[–] Blaster_M 0 points 5 days ago

so macOS is sus

[–] ricdeh 17 points 5 days ago* (last edited 5 days ago)

macOS definitely is Unix. In the literal sense that it is actually certified (unlike FreeBSD, for example), and it is very much Unix-y under the hood.

[–] stupidcasey 1 points 5 days ago

As far as I can tell literally everything (except for windows) is UNIX, it isn’t exactly a high bar to pass, it’s like saying all drinks are water based which is technically true but I’m not going to give a kid a wine box when I run out of juice boxes.

[–] [email protected] 0 points 5 days ago* (last edited 5 days ago) (1 children)

I think that Linux is synonymous with open source and freedom and to some extent privacy.

android is synonymous with Google

I’m only guessing, but when people ask about a Linux tablet or phone, they actually want the former, rather than the later, even though android is a Linux derivative, as you rightly said.

[–] dohpaz42 10 points 5 days ago (1 children)
[–] [email protected] 1 points 5 days ago* (last edited 5 days ago) (1 children)

I don’t know if you are deliberately missing the point ?

You need a lot more than open source android to make a phone work.

[–] dohpaz42 9 points 5 days ago (1 children)

I didn’t miss the point. Maybe you’re conflating a distribution with an operating system. But, since you brought it up:

  1. LineageOS
  2. GrapheneOS
  3. Fire OS
  4. Many more…

My point is that — at least in my eyes — open source is not synonymous with one single project. Do with that what you will.

[–] [email protected] 25 points 5 days ago

Linux works on desktops because the companies making desktop hardware put somewhere between "some" and "massive" effort into making mainline Linux work. It's not that difficult for motherboards (most of the work is done for motherboard manufacturers already) but for anything from CPUs to disk drives, manufacturers write Linux code and submit it back upstream. Without companies wanting to make Linux work on PC, it simply wouldn't. Of course there are plenty of volunteer and hobbyist programmers who also contribute, as well as people paid by the various free software funds, but they generally do smaller stuff rather than complete device support. It also helps that computers have standardised ways of booting and identifying what hardware is present.

On ARM, companies like Qualcomm take the inverse approach. They take Linux, make some modifications (usually ones that will never be accepted upstream because of code quality or style concerns), build binary drivers for that specific version of Linux, and then hand that entire thing to companies like Google and Samsung. These vendors have no interest in upstreaming code and make a lot of money selling ongoing maintenance for old, customised kernels.

Booting ARM devices is also a pain. Instead of BIOS/UEFI, every vendor has their own boot method, usually involving a modified version of u-boot that's customised to do whatever weird shit the vendor needs.

Even if you get Linux to boot, you'll probably struggle with basic features like "not burning through the battery in ten minutes" without vendor code or binaries.

There are projects to bring normal Linux to phones. Ubuntu Touch is actually quite usable, Plasma Mobile works on a few devices, and postmarketOS has a surprising range of working hardware. One big challenge is support for hardware accelerated wifi, and the latter is doing quite well for that.

Still, despite all the hard work, some stuff like binary drivers just won't make it into the kernel without major effort for every model of SoC. For Android phones, the custom upstream kernel can form a good basis, but someone needs to go through the code and make it Linux compatible. WiFi and Bluetooth can usually be hacked together but someone needs to do it. Cell modems are even worse, so calling and texting are even less likely to work.

Basically, there's no commercial interest, the hardware works very differently, and it's a lot of work. It can be done if someone is passionate enough about Linux on their device but only for one or a few related models in that case.

[–] [email protected] 35 points 5 days ago (3 children)

There's been multiple attempts Ubuntu and Plasma both have projects, Ultimately a lot of compatibility issues seem to hamper uptake, components like cameras and such can be hit or miss.

[–] [email protected] 35 points 5 days ago (2 children)

More than anything, the problem is apps. I installed Ubuntu Touch on an old device I had lying around (after replacing the battery to bring it back to life), and I ended up liking it more than my daily driver. It worked, the interface was snappy (no pun intended), and there's a lot of solid design choices. I found myself trying to navigate with gestures on my android phone after.

However, I could not talk to my friends, who unfortunately use WhatsApp. I could not install my banking app. There's a bunch of small thorns in the side that makes changing difficult for most users - kind of like in the early days of desktop Linux.

As in the early days of desktop Linux, the solution might lie in a compatibility layer (like WINE). Android emulation within at least Ubuntu Touch has gotten quite good, I believe. Unfortunately my device is too old to support it.

Those interested should also check out Postmarket OS.

GNOME, a major desktop environment, is also moving towards all apps being designed for all types of devices. But as long as people can't use their banks, switching is hard.

[–] Kelly 10 points 5 days ago

More than anything, the problem is apps.

True, its a real chicken and egg situation. No one what to use a platform without decent app support but no one wants to develop for a platform without any users.

[–] [email protected] 1 points 5 days ago (1 children)

Do you have a link for what gnome is doing?

[–] [email protected] 2 points 5 days ago

Here's a GNOME blog post from a couple of years ago. But really it's about GTK4 - apps designed for GNOME are made to be adaptive. So if you're using a GNOME desktop you can experience it yourself by simply making windows of the core apps smaller, be it GNOME Web, Maps, Weather, Calendar, or a huge range of other apps. Apps like Spot (Spotify client), Tuba (Mastodon), Shortwave (radio), and Podcasts are also perfectly adaptable for mobile devices. Basically apps in the GNOME Circle should work well on mobile, and many of them have screenshots that illustrate how they look in different form factors.

Also, this.

[–] dual_sport_dork 2 points 5 days ago

There was also the Nokia N900 which ran Maemo, which was much closer to a traditional Linux distribution to the point that it was fairly trivial to compile desktop Linux programs for it. Which could even be done on the phone itself, if you had a lot of time on your hands.

[–] [email protected] -2 points 5 days ago

I've seen marathons with less running-on than that sentence-esque collection of letters.

https://en.wikipedia.org/wiki/Greenphone

[–] ch00f 25 points 5 days ago (2 children)

Android OS runs a modified version of the Linux kernel.

[–] [email protected] 12 points 5 days ago

And with Termux, you can run Linux on Android on Linux.

[–] FuglyDuck -1 points 5 days ago

Shhhh.....

we don't speak of that.

[–] [email protected] 20 points 5 days ago* (last edited 5 days ago)

The processors and peripherals aren't as uniform as they are on computers. Each SoC has a different set of components, which need drivers and custom set-up mechanics and they're often only shared between the chip designer and phone manufacturers. A lot of complicated reverse engineering is needed. And that's often not worth it as there are many different phones on the market and they're short-lived devices. So we end up in the current situation where we don't have the operating system foundation / drivers available to the community to build upon.

There is Linux on phones. A modified Linux kernel runs on every Android device. Just the userland is an entirely different one. And Linux isn't there yet with the desktop and apps. A lot of features are missing, power saving, delivering messages while sleeping and doing background tasks while saving power in the pocket... It's kind of a chicken and egg dilemma. We'd need some popular Linux phone so people are motivated to tackle the remaining software issues for a mobile ecosystem. And we won't get one unless there is some good software so it can be marketed.

[–] [email protected] 16 points 5 days ago* (last edited 5 days ago)

Nothing prevents you drom installing a linux os on an android phone, provided someone made a rom for your device. It's just not very useable due to proprietary drivers. Ubuntu touch exists for example, but on most phones you can't even use the cellular antenna iirc

[–] [email protected] 14 points 5 days ago* (last edited 5 days ago)

Nothing really. Someone else already wrote that Android is technically Linux. But you can also get "regular" Linux on mobile devices, it's just a matter of using a distribution with mobile-friendly UI as well as getting driver support for the phone's hardware. Ubuntu touch exists for example, but only works on a limited number of devices and even on supported devices it's not really suitable for the average user yet.

[–] [email protected] 10 points 5 days ago* (last edited 5 days ago) (1 children)

Pratically no universal way of making Linux boot with ARM processors.

Much more closed source drivers (than x86 ecosystem).

[–] [email protected] 1 points 5 days ago* (last edited 5 days ago)

This is the key - no universal (i.e. No open standard) BIOS like on PCs.

We need a BIOS war for ARM, and since Android has it locked down, there's little competition to push for it, unlike when DOS was trying to become the standard for minicomputers.

[–] [email protected] 7 points 5 days ago

Locked bootloaders can prevent that. Or proprietary hardware drivers can make it unworkable.

[–] [email protected] 7 points 5 days ago

In practice? Constantly changing hardware with soc vendors that publish nothing and device manufacturers that (have to) keep pushing out new models on a short cycle. Plus many of them have extra shenanigans to keep the bootloader locked so you can't install a recovery (presuming you had a working one) so you could replace the os. There are some rare exceptions, but the hardware is rare and tedious and not many people can or will work on installable Linux on them.

If you just want to run some Linux userland, there's ways to do that on top of android, though. Want to get to a Linux like system or run a program? Might be as close as installing a terminal or running adb shell.

[–] [email protected] 4 points 5 days ago

Android is Linux

[–] bamfic 2 points 4 days ago

Because all the linux distros for mobile are steaming piles of horse shit.

[–] pelya 3 points 5 days ago

You can install Linux on rooted phones using Linux Deploy, or you can install Linux-in-an-app such as Userland or Termux if you don't have root.