Do you consider ChromeOS a Linux distro? it's based on Gentoo.
To me, a Linux distribution is an OS where, given that I am very comfortable with another Linux distribution, I will quickly be able to find my way around.
Does Android have services? As root, can I start/stop them? Can I install libraries somewhere and use them somehow? How do I package an app (other than by running "build" in Android-Studio and letting the magic happen)? Could I install my own window manager?
=> I don't know any of that, so it's not a Linux distro.
As a comparison, SteamOS is based on Arch Linux and has a particular setup (with a read-only "core" partition I guess?), but I am pretty sure that if you give me a shell, I will feel like I am in a Linux distro.
Yes, every app can define its own services.
>As root, can I start/stop them?
Yes, you use `am startservice <service>` and `am stopservice`.
>How do I package an app (other than by running "build" in Android-Studio and letting the magic happen)
If you mean to manually do what the android grable plugin does you can manually call javac to compile your Activity, you can manually call d8 to turn the class into a dex, you can manually call aapt2 to compile your resources, you can manually zip all of it up, you can manually call zip align on that zip, and you can manually call apksigner to sign the apk.
>Could I install my own window manager?
Android's window manager service is built into system_server. You can't really install your own. Someone could edit WindowManagerService.java, share it with you, and you can rebuild system_server to include that.
But yeah I'd like to learn more about Android. Unfortunately I haven't found documentation that got me started. Maybe it is there, but when searching about Android, I tend to get the Android SDK, not Android-as-an-OS stuff.
If you have any resources to share then, it would be nice :-).
https://source.android.com/docs
There are also some books about Android's internals, but they are somewhat outdated.
One such book is Android Security Internals and is about Android KitKat (2014). Android has evolved since then, but the basic concepts are the same.
https://ia600608.us.archive.org/29/items/android-internals/a...
If you want fully up to date information about something not in the official docs you will probably just have to dig in to the source code.
My point was really that if I you say "I work on a Linux distribution", I think about something like Debian/Fedora/Ubuntu/... I could be pedantic and say "oh, is that a GNU/Linux distribution?", to which you could answer "nope, it's Alpine". And then we could debate on exactly what is required to call it "GNU/Linux" and not "something-else/Linux".
If now you showed me your computer running Android, I would honestly be very surprised. Why didn't you say "Android" instead of "a Linux distribution"?
If you tell me "I run Linux", I won't say "oh, do you not run a userland then?" either. Linux is a kernel, but it is also the name commonly given to a group of OSes that are very similar (and that are commonly referred to as "Linux distributions"). Android is not part of that group.
At best it is "based on Linux", or maybe "Linux-compatible".
This is an extremely important distinction, because proprietary kernels and drivers is why you can't install a different Linux distribution on your Samsung or Xiaomi phone.
Of course it is a gradient, but Android goes pretty far away from the common understanding of "Linux distribution".
That isn't true. While AOSP does include 203 patches for Linux, you can run Android with a stock Linux kernel.
Which is technically true, but in reality no consumer Android device actually does this, so irrelevant.