this post was submitted on 18 Aug 2024
35 points (94.9% liked)

Android

27508 readers
124 users here now

DROID DOES

Welcome to the droidymcdroidface-iest, Lemmyest (Lemmiest), test, bestest, phoniest, pluckiest, snarkiest, and spiciest Android community on Lemmy (Do not respond)! Here you can participate in amazing discussions and events relating to all things Android.

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

Rules


1. All posts must be relevant to Android devices/operating system.


2. Posts cannot be illegal or NSFW material.


3. No spam, self promotion, or upvote farming. Sources engaging in these behavior will be added to the Blacklist.


4. Non-whitelisted bots will be banned.


5. Engage respectfully: Harassment, flamebaiting, bad faith engagement, or agenda posting will result in your posts being removed. Excessive violations will result in temporary or permanent ban, depending on severity.


6. Memes are not allowed to be posts, but are allowed in the comments.


7. Posts from clickbait sources are heavily discouraged. Please de-clickbait titles if it needs to be submitted.


8. Submission statements of any length composed of your own thoughts inside the post text field are mandatory for any microblog posts, and are optional but recommended for article/image/video posts.


Community Resources:


We are Android girls*,

In our Lemmy.world.

The back is plastic,

It's fantastic.

*Well, not just girls: people of all gender identities are welcomed here.


Our Partner Communities:

!android@lemmy.ml


founded 1 year ago
MODERATORS
 

Hi everybody,

I've been unable to make sense or gain better understanding of the Android update system, so I'm asking here.

Coming from the linux desktop, there's two main parts of the system: the kernel and the userland. I could simply update the kernel without updating userland and vice-versa.

But does it work the same way on Android? Why are we so dependent on OTA updates from the individual manufacturer? I understand that microcode is proprietary and can come only from the device manufacturer, but aren't kernel updates and userland decoupled from this (for devices which support project treble and GKI)? Can't I just run a different FOSS launcher, get the upstream GKI kernel and run it with the microcode offered by the manufacturer?

What consists of an Android "version"? Can't I just not update the microcode beyond what the manufacturer provides, and instead keep updating the kernel (by "kernel" I mean GKI and not the actual linux kernel) and userland and in essence keep updating my android version?

I'm probably missing some fundamental understanding of android here, which is why decided to ask here. Thanks for your help!

you are viewing a single comment's thread
view the rest of the comments
[–] khorovodoved@lemm.ee 4 points 3 weeks ago (1 children)

Short answer: yes, you can do exactly that.

[–] catloaf@lemm.ee 4 points 3 weeks ago (1 children)

...but it's probably going to break a bunch of stuff, if it boots at all. Each kernel and its modules are built for a specific model.

You can sometimes find alternative kernels on XDA. Usually there's no need, or advantage.

If you really want an actual Linux kernel on your phone, I would just run full actual Linux. There are distros for this. But I would expect poor performance, and terrible battery life.

[–] liveinthisworld@lemmy.dbzer0.com 1 points 3 weeks ago (1 children)

Sorry but I'm having trouble following the discussion. Copying over from another comment:

If I keep the proprietary drivers of the vendor in place and just upgrade to the latest GKI by Google, shouldn’t that be OK in theory? Unless the KMI itself changed and everything breaks.

[–] catloaf@lemm.ee 1 points 3 weeks ago (1 children)

I don't know what KMI is, but if you mean the kernel ABI, yes it changes every version and modules have to be recompiled against the new kernel.

Kernel Module Interface, Google's new project with making the GKI mandatory on devices. I think it's a good step.

Yeah if the ABI changes spec frequently I can see the problem. Thanks