Constructive GNOME & a bit of GTK Criticism

Warning!
Im going to heavily criticize GNOME’s approach at developing software. This will be long!

Please keep in mind that i don’t have anything against the people behind GNOME, I actually use their software on a daily basis, i wouldn’t be able to live in Linux without things like Gnome-Boxes, Bottles or Parabolic.
If you are a GNOME developer or someone that uses GTK, please take this constructively and use it for something helpful, i know you already get a lot of not useful opinions on a daily basis.

I will provide, when possible without making me sink too much time here, sources that back my claims in the beginning of each segment and keep in mind that I spent a few months back in early 2023 giving my hardest to try and use GNOME, i had experiences and observation shape my viewpoint.

1) Shipping Broken GTK4

Since the early stages of GTK4 development, a pretty substantial bug that made a lot of programs practically useless was discovered, Listview Scrolling is Broken.
What this would do is that if you were scrolling in a GTK program that uses Listview, it would make the list of objects (let’s say, files) start moving up and down like crazy, making basic scrolling a nightmare.
Honestly it’s normal for this kind of problems to appear, what is outrageous is how GNOME handled it.

In a development environment where stability is important, what would happen is decreasing the porting efforts to GTK4 and make it the top priority to make the toolkit actually usable to avoid breaking User Experience. Oh and of course, avoid shipping the broken toolkit to users at all costs, even if it means interrupting the work of contributors.

Well, GNOME decided that shipping the broken listview to users was a good idea.
I experienced the issue firsthand, i found that i could no longer scroll in any folder without Nautilus going insane.
GNOME seriously screwed up here, because v43 of Nautilus and the affected GTK versions got shipped to distros like Debian Stable (im not sure if they have back-ported a fix), basically it affected everyone using GNOME 43, forcing them to either live with it, change the file manager or switching desktops.

It feels like im stating the obvious, but GNOME should really focus on delivering a usable product. I have asked programmer friends unrelated to Linux what they think about this and they were shocked at the lack of care.

2) Extensions

Insert countless reddit and forum posts complaining about XYZ of extensions:

Ohhh boy.
I think extensions are great and on most cases everything goes smoothly, but sometimes GNOME is like an absent parent giving his kid a mobile phone to avoid interacting with them.
This was made evident with the announcement that GNOME 45 would require a rewrite of every extension.
Not really a problem, the deal-breaker was the time frame.
They gave very little time (less than a month) to developers who are most likely working on extensions in their free time to make pretty substantial changes in the code-base. And guess who gets all the hate if the extension is not ready for the next release, exactly, extension developers.

GNOME should focus on making sure the top 20 extensions can work correctly with the changes they make. A good way would be to introduce them in the official extensions, like the gnome_fallback or user themes extension.
This sounds hard but everything is possible with good organization.

3) Libadwaita & more GTK

Insert countless reddit and forum posts asking how to theme libadwaita and “why do my apps look out of place” questions

GNOME decided to have an interesting relationship with GTK4 (i will treat them as the same development team behind both because that is usually the case). They pulled a very selfish move in deciding to continue work in GTK4 in an addon system to it, Libadwaita.

Before, in GTK3 days, GNOME would work together with all the other developers outside GNOME and reach consensus in decisions related to how develop GTK. This was really useful to smaller players lacking funds, like Xfce, Budgie, Mate, etc. (take that with a grain of salt because im not a gtk developer, but you can see that lots of popular gtk apps and desktops are stuck on version 3, that’s the fact.)

What GNOME decided was to redirect development efforts away from GTK and instead concealing them in Libadwaita just to avoid dealing with reaching consensus and develop their things faster. Now, i don’t see a problem with that, but the side effect is a very decreased development to the universal GTK, making the lives of smaller players that disagree with Libadwaita harder.

Another problem with Libadwaita is the lack of theming (i know the accent colors are being worked on, but it’s going to take a long time). You can see in lots of linux forums that new users who are just getting into customizing their desktops, are often confused to why lots of programs lack theming.
And the solutions to theme Libadwaita are often hacky and will make the application behave badly if you don’t use a very select group of themes (like vimix or catppuccin).

To be fair, KDE is also doing this with Kirigami. If you ever tried to get a QT Kirigami app to look okay in a GTK desktop you will know how hard it is. At least it supports themes inside KDE.
I had this visual cancer happen when i opened Kate meanwhile using Kvantum.
Unrelated, but is Linux customization dying?

4) Bad Design

Okay, this part is mostly a personal opinion based on design tastes.
I think that GNOME 40 changing the layout was a bad choice to make.
In 3.38 you had a more space efficient layout that allowed a more easy management of open windows, keeping track of what is open in each desktop (thanks to the bigger thumbnails), more efficient mouse usage by having the dock near the activities menu and a more compact quick settings menu.


Tastes aside (that can get fixed using extensions or going with Pop!_OS), there are some real problems with Gnome 4X’s redesigns.
Navigating the system without extensions, especially for mouse driven users, is very cumbersome. Having to click the activities menu, then go all the way down to open a program and repeat it a bunch of times (especially if you don’t know about drag and drop) will wear your hands down like crazy.

There is also a big problem with the quick settings menu that is very likely to go unfixed, because the design itself is flawed. When you are using a 720p screen (like the one found in the Steam Deck) it’s very likely for the quick settings menu to go outside the screen and make certain options unreachable.

I find that GNOME is going more with a “let’s make it look good” mentality that is often making functionality or even accessibility worse for users. You could argue that GNOME 3X was more forgiving for people with mobility problems in their hands and i find it surprising that nobody thought about that during GNOME 40’s creation.

5) Lack of features

Insert lots of users asking for XYZ feature in all kinds of forums:

GNOME has a serious problem with the lack of features present in most of their programs. Yes, i know i am being a bit hypocritical asking for stability + features, but literally every desktop does that already.
The other day i decided to play around with a gadget that works as a remote mouse + keyboard in a controller shape. I wanted to adjust the mouse speed of that gadget to make it more comfortable to use, only to find out that GNOME only supports one mouse configuration at a time.
There are other examples, like Nautilus missing split file view, including a terminal, compositor and more advanced Wayland features and probably more things i can’t think of at this moment.

It really FEELS like GNOME is wasting time and money developing useless things, something very strange for the desktop with currently the most funding. We end up getting a buggy mess with few features that don’t address real needs of their users.
It really makes me wonder how KDE is lately managing to be so stable but yet add so many features that are very well tested.
A notorious example of the lack of features & questionable design is GNOME not putting the work in getting drag and drop support fixed, they put a band aid by making Nautilus able to manage compressed files. Too bad you can’t use it because scrolling is broken, and file roller is used in every GTK desktop, the priority to fix it should be higher.

6) Future Technologies

“And then, we waylanded all over the place, just when the year of the linux desktop arrived!” ~ Neo-Richard “The GNU” Stallman in 2075, probably.

Jokes aside, something strange i see is how slow GNOME is at approaching new technologies, specially Wayland.
In the last few months, Wayland has been at full speed developing protocol after protocol to finally get all of the missing pieces together, especially thanks to KDE and other projects forcing GNOME to reach consensus on how to approach certain things.
The unexpected side effect is an arms race of who gets closer to 1:1 X11-Wayland support.

Thing is, the users that really want to use Wayland are more and more likely to drop GNOME in favor of other desktops or window managers like KDE, Hyprland or Sway.
The reason are the protocols getting implemented faster on every place but GNOME. You have KDE merging tearing, color profiles and likely more stuff.
This already makes most gamers and graphical artists prefer KDE over GNOME and it will only get worse for GNOME if they keep slugging around in adding proper support.

7) Conclusion
I really hope that everyone involved in GNOME and GTK take this criticism seriously and in a positive light, what i want most is for the Linux Desktop to improve, but sometimes you just gotta take a slap in the face to realize that you are doing things wrong.
And if im the one who needs a slap in the face, please give me one! Oh and please try to be constructive like i tried to be.
Oh and please avoid using the “fix it yourself” argument, i don’t have the skills, what i can do is write this. That point just a cheap way to make me look bad, the point is arguing over GNOME and going places via discussion.

Now, a TLDR for those who don’t want to read that wall of text:

I think that everyone who values their computer and sanity should avoid using GNOME at ALL COSTS. Above are the reasons of why i think that.
KDE 6 will mark the death of GNOME

10 Likes

I reacted with clapped icon not that I completely agree, but some of your critics are more or less correct especially about accessibility.

I think it’s better for you to get involved in Gnome development if you are developer with knowledge to improve things.

Also allow me to comments on several things:

  • Wayland: They literally try to drop X11 in favor for Wayland sole implementation, and Joshua Strobl (budgie) and several other downstream/fork DE developer literally begging to keep it as is. I think Gnome is avant garde on pushing Wayland implementation, it’s been default for years and when Gnome has courage to anger downstream/fork DE developer by ditching X11 completely other DE will follow.

The thing is, Gnome is used by default by some of the biggest entreprise distro which demands stability, ditching x11 would definitely riled up some people which depends on x11 solid implementation and reluctant to move on to wayland.

  • Theming: yes it’s highly subjective and let me be clear on my personal opinion: most people sucks at design, I saw and read plenty of opinion piece by people claiming to have better approach on designing UX with no sense of design. I saw their “riced” desktop and cringed so hard knowing that they think their desktop paradigm (or lack there of) is better to implement for everyone.

So no thanks, I prefer Tobias Bernard, Alice M and Chris Davis to design my UX on Gnome.

TLDR;

Not sure what’s the purpose of this critique anyway if your point is that “KDE 6 will mark the death of Gnome”… like… Gnome survived worse with the release of Gnome 3, Gnome will survive if 16 people who already uses XFCE or WM moved on to KDE 6.

Like, it’s not a big of a deal.

Why would anyone want to use this mess? It brings absolutely no benefit to end users and it’s being forced on us. The only reason why Wayland even exists is because X11 is too bloated and too difficult to maintain. But the end user only suffers because the so-called X11 replacement is functionally inadequate.

If they see this, which is unlikely, they are going to take it as proof that they are on the right track and are just going to double down. For all practical purposes, ɢɴᴏᴍᴇ development proceeds exactly as if the developers are intentionally trying to piss off their users.

Wishful thinking. KDE is just trying to out-ɢɴᴏᴍᴇ ɢɴᴏᴍᴇ. They will fail. Instead of sticking to what they do best, they are just copying bad design from ɢɴᴏᴍᴇ.

4 Likes

^see what I mean? :smile:

Also Gnome 3 won. Compared to stagnated MATE who’s developer think that “They should’ve stick with what they do best!”

Good design attracts new user.

User who stuck in the past will seek the DE that cater to their stuck mindset.

Hell no, getting involved with that bunch would be an utter waste of talent. Even worse than working on KDE.

If you are a developer with knowledge to improve things, fork dwm and make it good for yourself, then share it with others.

1 Like

He clearly seeks to improve things and have the knowledge to do so.

Who knows maybe he’ll make Gnome looks like it’s designed from 1998, wouldn’t you love that?

It already looks like that, except for round corners and ugly switches.

Nah, 45.1 is awesome :smile:

If we copy android switches and uses material design-esque (which was 10 years old design) we would be Budgie! lol.

honka_memes-128px-50

2 Likes

I have none of these issues in OPENBOX :grin:

4 Likes

nodding

2 Likes

Gnome 3 was trash back when I first used it I was using Gnome 2 before, constantly crashing and not many people understood the new Gnome 3 workflow back then. I switched to another DE shortly after, it hasn’t been up to about 6 months ago that I gave the new Gnome another try. It has improved since Gnome3 and I understand the “Gnome workflow” as well now which I didn’t when Gnome3 had first come out. I’m a happy Gnome user now, before I was using KDE Plasma and before that i3wm and Sway and before that Cinnamon and Xfce and Mate.

Gnome 3 walks so Gnome 40 can run.

And one can say Gnome 40 is fundamentally, the same thing to Gnome 3 but with updated Shell.

Of course, improved performance, graphical fidelity is welcomed but if we talk about “workflow” and “design paradigm”, it barely changes since.

MATE stagnated with their “design” (or lack thereof), Gnome kept moving forward…

…and KDE users (with sad looking MacOS wannabe rice) keep complaining in Gnome threads (joke).

I actually read quite the opposite in most places, that Gnome looks more like MacOS.

If one barely scratch the surface? yes.

But if one has experienced both Gnome and MacOS workflow, it may “look” the same, but it’s fundamentally two different things.

I think ElementaryOS (Pantheon) look and function similarly to MacOS. I mean it is created to convert MacOS user afterall.

Gnome has their own paradigm. It’s reflected in their design language.

I know that, that being the reason why I said when it comes to “looks”, not functionality. Also the reason that when someone themes their KDE Plasma to look like Windows it also isn’t the same as Windows.

Yup, I wasn’t implying that you didn’t know btw.

And yes, KDE isn’t the same as windows, but they made to look like Windows. Since KDE doesn’t have… strict metaphor, so whatever it looks like out of the box is what the developer want it to look like, since customization built in.

Couldn’t agree more, most people think that great design is changing few colors. :laughing:
Problem with that is…Gnome suck at design / user experience even more than average rice at unixporn. :rofl:

It’s a bit like mad people - some of them sound perfectly logical, systematic and legit…with only one caveat - completely mad presupposition. :laughing:

Gnome is software made by :alien:s for :alien:s.
It’s really good for :alien:s, i’m sure! :smiley:

1 Like

Unixporn shouldn’t be used as point of reference.

And yes, it’s really good for people in general. It’s the reason why production-ready distro, non-hobbyist distros, like SLE, RHEL, Rocky, Alma etc, defaulted on using Gnome.

I actually have grown to like the Gnome user experience, probably because I quite caring about customizing my desktop because I just want to use my desktop and the only thing I care about changing now days is my wallpaper and the icons displayed on my panel.