@xerz Thanks for raising these points! This is definitely an interesting topic.
I don't agree with the implication that increasing choice and thus complexity is inherently negative:
Just considering the mobile ecosystem (since it has a more tangible scope for me at least), postmarketOS was the first major effort here. If we had tried to discourage folks from creating Mobian, Kupfer, nixOS-mobile, etc. The end result would likely be less communication between these projects... It simply isn't possible to create a unified ecosystem this way.
And fwiw we aren't even unified on glibc, since pmOS is built on Alpine, we had to put a lot of work into getting systemd and musl to somewhat work together.
But consider even just at the tiny scale of postmarketOS, we are able to offer a huge range of interfaces on top of a massive list of device exactly because we encourage choice, does this increase complexity somewhat? YES, but the end result unifies our community around the core goal of building a mobile operating system. We are able to focus on things like UI and apps as well as deeper UX like the initramfs/recovery environment, installation process, and immutable effort as a single community.
In my opinion postmarketOS is working towards creating a "federation" of sorts exactly as you describe. Heck maybe that becomes a more formal effort in the future...
We previously have discussed making a "linux mobile" website which covers the major distros, interfaces, and describes the overall goal as a way to introduce people to the movement, I think this is absolutely something we should revisit.
At the end of the day though I think it's very important to have *opinionated defaults* that offer the best possible experience for the average user, and I do think that's something we should come to agreement on.
Regarding GKI/GSI, I would actually consider these efforts to hugely raise the level of complexity. Consider what they are trying to solve (vendors not updating their drivers...) and why (money, mostly). In practise many vendors don't follow these abstractions properly, so things break... These kinds of technical efforts are only required when most of the development is done by people who have no ideological interest and are just getting paid to do their work (which i have no problems with fwiw, that's capitalism...)
When it comes to software created by people with a greater goal and a deep care for users, that's when people build things like postmarketOS which are tooling-first, well documented and easy to get involved in. We have to have this care because we want to attract new developers and new users, it's an earnest effort to improve peoples lives. As long as everyone works towards that fundamental goal I think the rest will fall into place over time.
Regarding tow-boot specifically, it's a shame that it went the way it did, i think the scope was too big from the get go. We are starting a new similar effort over at https://tauchgang.dev with muuuch stricter requirements, instead requiring device maintainers to step up if they want their device to be supported and ensuring they stick around to maintain it.