This looks promising. Would be cool if we could set a standard Linux DE (like Plasma) as the default homescreen and have it integrate with Android's notifications, apps etc.
The graphics drivers on Android are compiled with Bionic where as most Linux distributions are compiled with glibc. You can't really mix and match them.
Desktop linux apps still need to link to the system graphics driver to get hardware acceleration.
That's just the tip of massive ridiculous endless NIH reinvention. Nothing works at all the same in any way. Android has its own Surface Flinger windowing system, with its own drivers. Nothing is at all alike the rest of Linux userlands, from libc up.
I don't think it's NIH so much as the glibc ABI is a broad surface of implementation specific choices outside the C standard, and a moving target. It's an emergent property of many small implementation choices that another libc project would find too difficult to replicate.
I had a recent experience fighting this sort of thing when I wanted to cross-compile from a distro using glibc to a distro using musl.
Glibc is also kind of bloated and it's reasonable that android or a similar embedded project would not want to pull the whole thing in. Especially when you consider the original goal of bionic was just to bootstrap Java code, which was meant to be the primary platform interface rather than C, they would want a very minimalist libc for that purpose.
This looks promising. Would be cool if we could set a standard Linux DE (like Plasma) as the default homescreen and have it integrate with Android's notifications, apps etc.
I'm trying to imagine a use case for this, but can't think of anything. Maybe Desktop mode + full/real Linux apps?
Oh that Is cool especially on a foldable you can run some interesting apps on it. And with wine + fex even more crazy stuff.
Very cool.
> libhybris allows glibc Linux programs to load the standard Android graphics drivers
I don't quite follow why you need that? This runs on a real full Android, so surely drivers already work?
The graphics drivers on Android are compiled with Bionic where as most Linux distributions are compiled with glibc. You can't really mix and match them.
Desktop linux apps still need to link to the system graphics driver to get hardware acceleration.
> Desktop linux apps still need to link to the system graphics driver to get hardware acceleration.
Oh, right. I forgot about that part. Thx.
That's just the tip of massive ridiculous endless NIH reinvention. Nothing works at all the same in any way. Android has its own Surface Flinger windowing system, with its own drivers. Nothing is at all alike the rest of Linux userlands, from libc up.
I don't think it's NIH so much as the glibc ABI is a broad surface of implementation specific choices outside the C standard, and a moving target. It's an emergent property of many small implementation choices that another libc project would find too difficult to replicate.
I had a recent experience fighting this sort of thing when I wanted to cross-compile from a distro using glibc to a distro using musl.
Glibc is also kind of bloated and it's reasonable that android or a similar embedded project would not want to pull the whole thing in. Especially when you consider the original goal of bionic was just to bootstrap Java code, which was meant to be the primary platform interface rather than C, they would want a very minimalist libc for that purpose.