The future of Feren OS theming for GTK
Edit (26/10/2021): If you want a GNOME Point-of-View about the themes situation, mainly around LibAdwaita’s effects on the whole situation, check out this video by The Linux Experiment: https://www.youtube.com/watch?v=Pdx_MwcMtnM
Writer’s note (22/9/2021): It’s important to stress that this is an opinionated post, much as it does highlight a problem that may otherwise may not become prevalent until it’s too late for users, and to help users understand what their expectations should be for consistent designs across applications in Feren OS’s (and other GNU/Linux OSs’) future(s).
I appreciate what GNOME has done for Linux, and I also like a bunch of things in GNOME, but… the arrogance that has been showing more and more in GNOME, which GTK+ itself inherits pretty much all of, is starting to really affect GNOME and GTK+ themselves now (becoming prevalent in 2018), to the point where it WILL affect users visibly, from applications potentially lacking titlebars in GNOME on Wayland (due to GNOME not supporting specification for that), to the point of this post, GTK+ themeing being seemingly phased out over time.
The point, even if it was opinionated, is to convey my concern over the arrogance being shown and over the point of this post (and consistency). I want GNOME and GTK+ to be successful, and I ain’t against developers in this regard, but at the same time I’m a person who loves themes (a compromise can be made, as shown in Qt, etc.) and ain’t afraid to call out problems like these when GTK+ used to be able to do this to the ‘just fine’ degree Qt still can. I especially wish good luck to those trying to fix GTK+’s theming issues.
Anyway, with that huge note aside, here’s the original unedited post:
I’m writing this to announce a change that’ll be hitting Feren OS next year, a significant change at that. I’m writing this also because I, Dominic, am frustrated — frustrated with the situation with GTK+ being janky and thus having broken theming functionality (of whom they blame themes themselves for) despite Qt doing all of that, even with custom/complex controls, just fine, and frustrated about users not getting to know it’s not all sunshine and rainbows when it comes to theming in GTK+, much as many will try to make everyone else think it is.
I could also mention how some GTK+ developers even go out calling stylesheets out for issues, that could just be bug reported, to further incriminate ‘themes’ in GTK+ instead of adding a proper theme API to fix all that, but… that’d be a discussion for elsewhere.
I hope you’re happy, said GTK+ developers, with what’s being announced below, and with no further ado:
There is no future for the Feren OS GTK+ theme beyond GTK+ 3
I’ve been tossing this idea around for a while now, and honestly with the GTK+ theme situation just getting worse and worse now I can confidently make this decision: Feren OS’s GTK theme will NOT be developed for GTK+ 4 and beyond.
There, honestly, just is no future for it, nor is there future for any theme really outside of Adwaita if GTK+ keeps going the direction it is going nowadays.
For example, LibAdwaita currently, and will likely for the foreseeable future, forces Adwaita to be applied in GTK+ 4, irregardless of your theme preference.
If that isn’t enough of a reason, there is, while not being discussed yet, the potential for GTK+ 5 to just not have themes at all.
Why bother at this point? It’s just going to be an inconsistent mess of GTK+ 4 being themed and GTK+ 4 NOT being themed, and the theme might even potentially be cut off anyway by GNOME in GTK+ 5 altogether. It’s better if I just smoothly transition Feren OS’s GTK theme out with GTK+ 4 entirely than not at this point.
So, what will happen come GTK+ 4+?
Simple, Adwaita will be used. Originally I wanted to at least let it follow the highlight colour of your applied colour scheme (or soon accent colour), but… given the current situation with LibAdwaita forcing Adwaita, a system-wide theme, I’m not sure if even THAT is feasible anymore now.
How will GTK+ 4+ applications appear in Store?
An idea I’ve had for Store is checking applications for their integration with the desktop’s style, for their integration with accessibility, their integration with the Desktop in general, and more.
Obviously, this change will mean they’ll fail on the first of those checks due to having or enforcing Adwaita (and therefore not being integrated with the desktop’s style), and therefore they will display a banner mentioning that GTK+ 4+ applications won’t respect their current theme (as it’s only fair for users to know).
Will GTK+ 4+ applications stick out like a sore thumb on my Desktop?
The short answer is likely going to be yes. Unfortunately, LibAdwaita is going for an extremely flat style right now for its widgets, in contrast to the current Adwaita style you’ve come to know in GTK+ 3 (of whom Feren OS’s theme is actually based off), and this therefore means that they WILL stick out like a sore thumb most of the time, if not all of the time, in Feren OS.
Honestly, I’m just really miffed at GNOME (and GTK+) at this point, and you can probably sense that in this post as a whole.
I’m sick and tired of this, GNOME, we all are. But, while others will keep fighting on, if THIS is what you want, GNOME, then so be it — let YOUR actions bring you their consequences, while us distribution developers can be honest and just point at you when users ask why their applications look unthemed and out of place.
The ball’s in your court, GNOME.
- Dominic Hayes