There are hundreds or even more of Linux distributions, each with its own quirks and philosophies. It's truly like the Wild West of operating systems!
Frankly speaking Linux is not an operating system, but it's actually just the kernel. The full operating system is made up of many other components like an installer, configuration utilities, GUI and CLI apps, and much more. It is called Linux distributions. So, Linux is just a kernel. It's like mistaking the engine of a car for the entire vehicle!
And somehow, Android is the most used Linux distro. Even Linus, the creator, says Google's ChromeOS is the most successful and nearest Linux desktop for the general public. Red Hat (now IBM) and SUSE are the most successful enterprise distros and traded Linux distros on the stock market. Android and ChromeOS are not truly open-source, yet unknowingly, billions of users use them daily to like cars. Ha!
@nixCraft That’s why we say the system is GNU/Linux.
@aemstuz Except not all linux distributions are GNU/Linux : Alpine linux for example uses Musl libc instead of Glibc, and busybox for most of the utilities, so by default there is almost nothing from the GNU project
@nixCraft I follow your posts to learn, and you are very helpful. Thanks.
@nixCraft gonna be real interesting to see what happens with that Google Fuschia kernel / OS thing they're making to try to get rid of Linux on their devices.
@naai my bet: not much comes out of it, the whole ecosystem is already entrenched around the specific combo Linux kernel + bionic libc made popular by Android (to the point that the libhybris compatibility layer is a thing for other distros). Google would have a hardtime to persuade the gazillion of manufacturer of SoC to target a new OS. Hence limited to Nest; And impacted by layoffs.
See Microsoft Singularity for another similar research OS that went nowhere.
@nixCraft isn't AOSP fully open source?
@psyhackological yes, it is. Although practically every kernel module needed to get it to run on an actual device is closed source. This is part of the reason why old devices that are still supported by LineageOS and others are running very old kernels.
@stinerman @nixCraft so the kernel modules are the key for long term supporting hardware while Android can be easily upgraded? Like LineageOS is pulling those up to date modules for specific Android version?
@psyhackological
Yeah the android version is divorced from the kernel version. For instance I still use a Pixel 2(!) XL as my daily phone. The kernel on it is 4.4, which is obsolete. The closed source modules will not work on a recent kernel.
@stinerman @nixCraft will not work or just not maintained / compiled?
@psyhackological AOSP itself is fully open source, but not a complete Android distro.
One also needs:
1- drivers which usually come as proprietary blobs (on a myriad of additional partitions)
2- additionnal services and API that most apps rely on, usually Google's proprietary Play Services (though there's microG, an open source implementation of the same API)
(and obviously apps, but here F-Droid can provide some alternatives)
@dryak how does @GrapheneOS relate to it? I know it is based on AOSP, probably using proprietary drivers as there is no other choice and it chose Google Play Services in the sandbox. I heard of microG but many apps like banking apps dislike it.
@psyhackological @dryak AOSP is fully open source and GrapheneOS is a fork of it providing substantial privacy and security improvements.
Specific devices require firmware and drivers to be added to support the hardware. The kernel drivers are always fully open source. Firmware for the devices we support is a mix of closed source and open source, and is more open than any typical laptops or desktops. There are shared source / closed source userspace driver libraries needed for typical hardware.
@psyhackological @dryak As an example, the Mali GPU kernel driver is open source but their userspace driver is still shared source / closed source with only certain partners getting access to it. The drivers for a particular device are a separate thing from the portable AOSP code.
microG didn't meet the privacy and security requirements for GrapheneOS, and it also lacks broad compatibility. GrapheneOS doesn't come with any form of Google Play, that's a misconception about it.
@psyhackological @dryak You can read about our open source sandboxed Google Play compatibility layer here:
@GrapheneOS @dryak absolute legends!
@dryak @psyhackological microG is an open source reimplementation of a small subset of Google Play services. There are still the Google Play SDK and libraries used by apps, other Google Play apps, etc. which it does not replace. It also still mainly uses the proprietary Google services.
Drivers do not have to be proprietary and the split between partitions has to do with ABI stability, sandboxing and optionally separate updates for separate parts of the OS rather than the source model.
> (and obviously apps, but here F-Droid can provide some alternatives)
F-Droid is not a particularly good showcase of the large Android app ecosystem. It's poorly designed and maintained, and it only has a fraction of the overall open source Android apps. It's in the process of being replaced with better options with a more forward looking approach and modern development practices. There are a lot of different ways to install/update apps with different procs/cons.
> additionnal services and API that most apps rely on
This is not really correct. Even a huge portion of the apps from the Play Store work without Google Play, which is an enormous number of apps. If you don't have a hard requirement to use specific apps but rather want any decent/good app in a given category there are lots of options not dependent on it including lots of open source ones. Many closed source apps work without Google Play though.
@GrapheneOS big thanks for the detailled answer.
@psyhackological @nixCraft AOSP is open source and is a complete, fully functional operating system. Hardware is not open source and often driver libraries for that hardware are not open source. Google Play is mostly not open source but is not at all required for a fully functional OS. Lots of apps depend on it but can do all the same stuff without it if they choose. There's a huge app ecosystem of apps without a hard requirement on Google Play. Google Play is not the core OS functionality.
@nixCraft did RMS take over this account today?
@nixCraft “Linux is not an operating system” I half expected that to conclude with “but a philosophy and a way of life” but yes, it’s just the kernel.