GNOME’s Tobias Bernard has a new blog post out and it’s an essential read if you’re interested in the direction of the GNOME desktop.
Reading rationale from the folks working inside of the project is important. It helps us to understand the way they think and the way they work. Posts like Tobias’ help fill in the blanks of why GNOME does what GNOME does which, whether you agree with particular decision or change, and is a healthy thing to do.
Speaking as an end ‘user’ of the GNOME desktop it is easy to feel like some changes or diktats arrive (seemingly) out of nowhere, with no real rhyme or reason.
Take the axing of desktop icons support in Nautilus. Even on paper this was going to be a controversial removal, but the fact it happened (seemingly) overnight left users blindsided and unaware, which furthered the (comparative) furore that followed.
But as Tobias’ “Community Power” series explains, there are “values and principles” guiding the way he works. GNOME, in his view, tries to “avoid preferences as much as possible”, preferring instead to tackle the underlying problems that cause excessive options (and thus burden) to spawn.
In my example of desktop icons, removing its defunct, unmaintained code from Nautilus enabled GNOME developers to build a better Nautilus, one that focuses on its actual job of managing files, not drawing desktop icons.
And it’s easy to lose sight of the fact that whether you’re for or against a particular feature, improvement is the common aim.
“Every Preference Has a Cost”
Some other insights Tobias shares in the latest blog post are also rather interesting.
- Flatpak is the future of app distribution
This isn’t an entirely surprising take considering the plethora of Linux packaging formats available. Heck, every “new” packaging format starts out as an effort to address the amount of them!
But Tobias is also on point: though some may consider Flatpak yet-another symptom of the underlying problem it’s trying to solve, it’s becoming clear that Flatpak is best-in-class among them (sorry Snap).
- The “traditional desktop” is dead, and it’s not coming back
That the modern GNOME desktop doesn’t consider itself a ‘traditional desktop’ is not a shock. GNOME Shell’s raison d’être has, since its inception, been to build a ‘modern’ Linux desktop experience based on enabling its users to do more, and bowing to the prevailing conventions of the era isn’t the best way to achieve that.
For Tobias, this means GNOME should be free to abandon “old concepts like menu bars or status icons” so it can instead focus on trying to “invent something better” holistically, from the ground up — even if that turns out to the harder course of action.
- System-wide theming is a broken idea
You’re likely aware of efforts in this area before. GNOME doesn’t have a formal theming framework. GTK and GNOME Shell themes are, to be blunt, an unsupported hack (think of how many themes break between GNOEM releases, for instance).
Tobias suggests those who don’t like the way an app looks on their desktop should stop theming and instead contribute to the app directly, fixing its flaws. Alternatively, for more ‘impact’, he suggests getting involved in working on the upstream platform theme.
I appreciate that GNOME considers its platform stylesheet “the best” (and only supports it, as it should) but calling system wide theming broken slightly misses the point of why most people make themes in the first place: to experiment, to learn, to tailor, to push boundaries. Few themes claim to “improve” usability, most have a more basic aim: look nice!
- Shell extensions are always going to be a niche thing
Rather than building GNOME extensions Tobias thinks devs should instead make apps or, for more ‘impact’, contribute to upstream GNOME Shell. The problem with that suggestion is evident: a lot of the functionality extensions replace are for features GNOME has already removed or deemed outside of its vision/design. Contributions to bring back feature previously axed are likely to get a terse reception upstream!
I don’t think GNOME extensions can be called ‘niche’ either. Ubuntu — the world’s most used desktop Linux OS — ships with several GNOME extensions preinstalled by default, as do other distro. Yhe suggestion that they’ll also “always” be niche runs counter to reality somewhat!
GNOME extensions are, to my mind, one of the most compelling features (albeit not an intentional one) of GNOME as a platform. I understand why GNOME doesn’t “support” or promote them enthusiastically, and it makes sense, but they’re such a fantastic by-product. I know many devs who got started by making extensions, or contributing to ones they used.
Might we hit an inflection point in not-so-distant future when extensions, much like GTK themes or status bar icons before them, become anathema to the cause? I hope not, but the fact prominent GNOME devs aren’t quite as optimistic as to their popularity suggests otherwise…
It’s hard to disagree with a lot of what Tobias puts forth, and it certainly gives me (and hopefully you) a better handle on what he, as a prominent GNOME developer and design lead, think of the desktop and its future.
But — and this is just me thinking off the cuff here — macOS and Windows take a one-size fits all approach; they say ‘this is how you’re supposed to use your computer’. The design teams for both also work for an ideal vision claiming to be user friendly, accessible to all, and all of that. I wouldn’t call either of these ‘traditional desktops’ dead, either.
Part of what makes Linux appealing to me (even now, some 13 years on from first discovering it) is that it gives ME control. The fact I get to choose how my desktop behaves on my hardware is, even today in 2021, mind-blowingly awesome.
Although I use GNOME I am increasingly accepting of the fact that I am not its “target user” these days. I know how to use computers. I’m not overwhelmed at seeing a couple of extra options in a preferences dialog. I don’t only want one way of working; I like to experiment and explore and play around. I embrace choice.
To be clear: GNOME hunkering down on delivering its vision does not remove any of my choice (other DEs are available, code can be forked, and so on).
For the past 13 years GNOME has not only met my need for a powerful, user-friendly desktop, but provided (however unintentional) a flexibility within it that lets me tinker, extend, finesse if or when I want to.
I don’t want to lose that, which I accept is totally selfish!
Still, I am just one dude. Give Tobias’s blog post a read over then let me know what you think down in the comments.