About the Gnome-shell extensions
As a matter of fact the default setup of Gnome3 (G3) is totally poor, it fits very few cases especially the ones that make less use of the mouse, for all the others ones that need to use heavily the mouse and many applications at the same time the default setup is unhandy. Hence you have to tweak the default behavior, which is essentially a guilty plea, to make it working as any other desktop environment (DE).
Let me get more in depth. When you change a paradigm, like G3 did, you have to do it accordingly with the whole elements that are included, but if you change just the base elements these will friction against the ones you didn't change, and nothing will work properly. You can see G3 like a new generation of asphalt that is not suitable for standard wheels, only few cars will drive safely on it while the all the others ones will crash. As you can see you shouldn't change a main asset without changing all the others that depends on it: this eventually will broken something! As a matter of fact Gnome-Shell is not handy if you want to use your computer differently by the G3 philosophy.
Unfortunately G3 made everything by itself ignoring all the others stakeholders, even if all the world was screaming against their behavior! But they resolved it easily just claiming that they were right by default and the others didn't understand nothing. The funny part is that from the beginning to the current version (3.32.2) it has changed and rewritten so many times that even the G3 devs hadn't an idea of what they would create, they went forward through tries like any beginner, but even though this evidence they have been consistent about their arrogance. This is typical the arrogance of the strongest, it is not a secret that behind G3 there is Red Hat in many, direct and indirect, ways.
Since the moment that G3 is broken by default for any non-Gnome3 use cases the extensions are the only tools available to revert, or fixing, the Gnome behavior. Extensions may sound cool and very community oriented, and them made the success of some famous browsers, but aren't very suitable for a Desktop Environment. Even though a modern browser can be considered as a small operative system, extensions modify just the way you interact with web pages, while Gnome-Shell is the medium through whom I use my computer, all the different applications, library and run-times. It is not the same things, I hope we are agreed with this.
What is it the main issues with the Gnome-shell extensions then? In my opinion are several:
- Extensions in they way are implemented are a contradiction toward the original Gnome 3 design idea.
- Extensions touch areas that belongs to the DE and shouldn't be left to the hands of anyone unless s/he is willing to participate to the project.
- Extensions are a declaration that you don't want take care about many aspect of a DE, you have
HIGbut this is not enough, ergo you are a lazy team.
- Extensions are realized by people that aren't involved in the project, thus will never be like made by someone that know at best the DE.
- Extensions break often because API/ABI break often, this happens because aren't part of the core project.
- Some extensions requires further libraries and the web system doesn't handle it.
- Extensions should be the last remedy against a serious and bad design implementation, and not the band-aids to everything that you did not want addressing.
Just an example, the default multi monitors support on G3 is so poor that is embarrassing how XFCE4 has a total a rational control over it with just a bunch of devs working on the project in their spare time.
Is the multi-monitors a worthy feature to implement natively on a DE or it is considered another childish non-modern request by the Gnome team?
I guess that a DE should care about those stuff and not ditching them for some confused or obscure idea about modern design, ditching stuff is not modern it is just laziness.
POP! inherited or adopted the same target of G3, but now #System76, listen carefully, I work in the marketing side of the retail industry, and I am not a user: I am a customer! Don't do the same error of the G3! Their are a foundation that follows some superior diktat while you are a company that must take care about your customers! You may want target a specific type of user but don't exclude all the others, don't hide yourself behind the bad and wrong decision of G3, don't allow that a weak, and poor implemented, extensions system puts shame on your effort and reputation. Don't delegate your duties to people that aren't involved or don't share your goals.
You may not want delivery POP! by default for all the use cases but you listed, for customizing the DE alternatively, a lot of useful extensions; with a grave gap about multi monitors — you sell hardware aren't you interested in selling more hardware? — some of them don't work for all the reasons I have been explaining, don't you think that you should take care also about people like me, that bought your hardware for your Linux involvement and not because we are coder? Please, don't be lazy like the Gnome Team, I repeat myself don't hide yourself behind Gnome3 choices, and fork all these extensions as well as you created new ones, make them working for your release target and make them available through your PPA so your customers can download and install working extensions and adapt POP! for different uses. If you will do that you will make all of us happy: a WIN-WIN combo that you had better to don't miss out!