GNOME Blogs
blogs.gnome.org · Company blog · on HN since 2008
Aggregated blogs by GNOME developers and designers on desktop design, software, profiling, and the project's direction.
What HN saysHN links it for GNOME design rationale and technical posts, such as window management ideas and a developer's article on frame pointers for profiling.
490HN people shared it
239linked it in comments
522stories submitted
6.7Kstory points
2 months agolast shared
2008people per year2026
Most-shared posts
- 1Restyling apps at scale12 people · 9 points · first shared 2018 · 1 comments on HN
- 2The Truth they are not telling you about “Themes”10 people · 10 points · first shared 2021 · 7 comments on HN
- 3GNOME and logind+systemd thoughts8 people · 45 points · first shared 2013 · 35 comments on HN
- 4Gnome: Introducing the CSD Initiative8 people · 11 points · first shared 2018 · 2 comments on HN
- 5On WebKit Security Updates7 people · 138 points · first shared 2016 · 44 comments on HN
- 6Doing Things That Scale7 people · 36 points · first shared 2020 · 8 comments on HN
- 7The new 501(c)(3) and the future of free software in the US6 people · 257 points · first shared 2014 · 66 comments on HN
- 8VP9 encoding/decoding performance vs. HEVC/H.2646 people · 117 points · first shared 2015 · 36 comments on HN
- 9On the Road to Fedora Workstation 316 people · 45 points · first shared 2019 · 14 comments on HN
- 10Gnome Shell UX Changes: The Research6 people · 7 points · first shared 2021 · discussion on HN
- 11A new accessibility architecture for modern free desktops6 people · 7 points · first shared 2023 · discussion on HN
- 12Rethinking Window Management6 people · 5 points · first shared 2023 · discussion on HN
- 13First fully sandboxed Linux desktop app5 people · 276 points · first shared 2015 · 131 comments on HN
- 14Gtk3 on a HTML5 backend5 people · 255 points · first shared 2010 · 36 comments on HN
- 15Writing x86 SIMD using x86inc.asm (2017)5 people · 98 points · first shared 2017 · 50 comments on HN
What HN people wrote when they linked it
MadcapJake · 2024-05-06
I'm stoked for "mosaic tiling":
> a new window management mode which combines the best parts of tiling and floating https://blogs.gnome.org/tbernard/2023/07/26/rethinking-window-manageme…
nextaccountic · 2024-04-09
Last time I heard, some people wanted to replace Vala with Rust.
Reason being that the Rust bindings are fairly ergonomic regarding the GTK OO system, plus Rust has a great ecosystem.
Relm4 in special is pretty great
https://relm4.org/book/stable/
edit: here is some earlier blog post from 2016 https://blogs.gnome.org/despinosa/2016/11/01/rust-and-vala/ but I think there were others since then
tsimionescu · 2024-03-02
I don't agree. Reading Gnome designers' blogs makes it pretty clear that they strongly believe in these decisions as the best UX. Looking around Gnome reddit there's also plenty of people who like this minimalism and think it's actually superior [2].
That's not to say that the designers are not supportive of the existence of extensions. They clearly do, that's why they make a nice Extensions app in the first place. But they never say "yeah, we made it as barebones as possible to make it easy for extensions". They explain why it's better for users not to have a minimize button on windows [1], or why they've removed the systray to avoid confusion and so on [0].
[0] https://blogs.gnome.org/aday/2017/08/31/status-icons-and-gnome/
[1] https://afaikblog.wordpress.com/2011/03/01/where-did-the-buttons-go/
[2] https://www.reddit.com/r/linuxquestions/comments/11bhxa7/comment/j9ypt…
Narushia · 2023-07-05
I believe the apps are designed this way so that they’re easily adaptable to GNOME shell on mobile[1].
I think the UI elements could be a tad smaller on desktops, but I’m still happy with how they look. Easily the best UI design out of any Linux desktop environment right now. At least in terms of clarity and consistency.
[1]: https://blogs.gnome.org/shell-dev/2022/09/09/gnome-shell-on-mobile-an-…
rwmj · 2023-01-18
This article by one of the GNOME devs is well worth reading to understand why frame pointers are currently the only good solution if you want accurate profiles: https://blogs.gnome.org/chergert/2022/12/31/frame-pointers-and-other-p…
I have to agree with him. perf has an option to use DWARF data for stacks, but IMHO it simply does not work.
supercheetah · 2022-05-06
Glade had a lot of problems, and core Gnomes devs really recommended against it[1]. I think that dev for Cambalache didn't want to try to figure that out.
1. https://blogs.gnome.org/christopherdavis/2020/11/19/glade-not-recommen…
preisschild · 2021-11-08
> For example, you need an extension to enable putting files/icons on the desktop (!?!?!).
Was so happy about the decision to remove desktop icons.
You basically never get there anyways and its just cluttering up the background when you do.
Here's a funny thread about this: https://www.reddit.com/r/gnome/comments/l8euqf/i_get_why_they_removed_…
Btw, there were some misconceptions about "disallowing theming". I recommend giving this a read: https://blogs.gnome.org/alatiera/2021/09/18/the-truth-they-are-not-tel…
I totally understand your point about extensions though.
pjmlp · 2021-07-09
I lost any hope when GNOME developers decided to kill Glade and started suggesting that developers should code raw .ui files directly.
https://blogs.gnome.org/christopherdavis/2020/11/19/glade-not-recommen…
Thankfully KDE is still around, but many seem to not appreciate the UI design tooling provided by Qt, because $$$$.
So I rather waste my time on Earth on platforms that value good UI/UX tooling.
danieldk · 2021-01-03
There is Glade. But some GNOME people seem to recommend against using Glade?
https://blogs.gnome.org/christopherdavis/2020/11/19/glade-not-recommen…
I have used GTK several times, but Qt always felt far more pleasant. Plus Qt applications work well on Windows and macOS, whereas GTK renders extremely slowly on macOS and looks and feels very non-native on Windows and macOS.
Spivak · 2020-09-12
If you are willing to accept something obscure PulseAudio actually has the best thing. Look into the PulseAudio native module which just let’s you put a speaker on the network as a normal boring sound output that works as if it was connected to your computer.
- Install the zeroconf module on both server and clients.
- Enable the native module on the server and open the port and tell PA to publish an mDNS record.
- See the speaker just appear in your sound options. Play!
Actual instructions if you want to set it up https://blogs.gnome.org/ignatenko/2015/07/31/how-to-set-up-network-aud…
tsukurimashou · 2020-03-02
I don't know try to type "Wireguard NetworkManager Ubuntu" in your favorite search engine?
https://blogs.gnome.org/thaller/2019/03/15/wireguard-in-networkmanager…
war1025 · 2020-01-21
It's used but some of the core gnome developers have advocated for people to stop using it.
What I can find with a quick search this morning: [1] [2]
Then again, there are also several people who still say it's worth using: [3] [4]
So maybe it's just Emmanuele Bassi advocating against it. If you look at the development pace, though, it hasn't really seen any significant development for quite a long time.
[1] https://twitter.com/ebassi/status/827482509982195712
[2] https://www.bassi.io/articles/2017/02/13/on-vala/
[3] https://blogs.gnome.org/mcatanzaro/2017/02/19/on-problems-with-vala/
[4] https://blogs.gnome.org/despinosa/2017/02/14/vala-is-not-a-programming…
SEJeff · 2019-08-09
Well a lot of enterprises care about things like user directories (LDAP) and the extra access control. Just because you don't need enterprise features doesn't mean that large enterprises (the target audience for Gitlab Enterprise) don't!
I'm not saying it isn't great stuff, it really is, but "it is all open source" is sort of a misnomer. It is open core.
I'm of the same opinion with Dave Neary on Open Core Software. He's a long time contributor to the GNOME Desktop Environment:
https://blogs.gnome.org/bolsh/2010/07/19/rotten-to-the-open-core/
abrowne · 2019-01-05
Yes, that QtWebKit revival is interesting and worth watching. I haven't followed, but I'm still not sure if it's up-to-date. This blog post from a WebKitGTK+ (with a section about QtWebKit) developer from 2017 is the best info I could find: https://blogs.gnome.org/mcatanzaro/2017/08/06/endgame-for-webkit-woes/
And yes, QtWebEngine does not keep up with Chromium, but it is updated to some degree. I wish Qt and distros could at least keep better up-to-date with security fixes, but it's easier said than done!
mruszczyk · 2017-03-22
If you look at why the application was built I would say it's not as silly as it sounds. It was built as a fun side project for GNOMEs 20th anniversary and was used to test starting a project using GNOME Builder. https://blogs.gnome.org/mclasen/2016/12/02/gnome-loves-to-cook/
I doubt it's something they took a serious amount of time on.
vdnkh · 2016-12-21
How does this compare to VP9/10 by a "human quality" metric? There's lots of cherry-picking about stats which makes an encoding sound impressive on paper but result in a worse perceptible quality. This is a really good article about testing encoders: https://blogs.gnome.org/rbultje/2016/05/02/the-worlds-best-vp9-encoder…
Additionally, adoption is really slow of VP9 already so I don't see anyone switching to Daala soon.
morsch · 2016-09-19
It's available in Fedora 24:
Fedora 24 continues to improve support for the next-generation display server, Wayland. Wayland is still not the default for Fedora 24, but it worked well enough that I would not be surprised to see it the default option for Fedora 25. Just know there are still some quirks, like the inability to reliably get screenshots working, which is a deal breaker for me. [0] More details in [1].
I'm sure it's available in most other big distros, too.
[0] http://arstechnica.com/information-technology/2016/08/fedora-24-review…
[1] https://blogs.gnome.org/mclasen/2016/03/04/why-wayland-anyway/
ronjouch · 2015-03-01
1. What do you consider "awful" (or, OP, a "horror") in this transition? (This is a real question, not a rhetorical one.) CSD are one of the better recent GNOME UX trends, I think, for the reasons below which feel well executed to me.
2. Motivations are (to my understanding) to save vertical space, reduce window clutter, and put common actions at the forefront. Matthias Clasen talks about it in great detail at [1] [2] [3].
[1] https://blogs.gnome.org/mclasen/2014/01/13/client-side-decorations-con…
[2] https://blogs.gnome.org/mclasen/2014/01/20/even-more-client-side-decor…
[3] https://blogs.gnome.org/mclasen/2014/03/21/dialogs-in-gtk-3-12/
catern · 2014-08-24
Sure, but UAC doesn't have to be as badly designed and implemented as it was in Windows. Allan Day has some great plans for adding this to GNOME: http://blogs.gnome.org/aday/2014/07/23/sandboxed-applications-for-gnom…
e12e · 2014-03-27
One of the best news for Gnome is their (updated/clarified) stance on portability, that I found linked in the section for developers[d] linked from the actual release notes[r]:
http://blogs.gnome.org/desrt/2014/02/19/on-portability/
"GNOME is not “Linux-only” and it never should be. People are running GNOME on FreeBSD, OpenBSD and very many other non-GNU/Linux systems. People are running GNOME on GNU/Linux systems that don’t have systemd. This will continue to be the case. We need to continue supporting these people."
[d] https://help.gnome.org/misc/release-notes/3.12/developers.html.en
[r] https://help.gnome.org/misc/release-notes/3.12/
nl · 2014-02-08
> Discovery looks interesting. Can it be used for a client to discover a cluster?
>> It certainly could be extended for that. We haven't done anything with discovery to help with that process yet though.
So what is the current best practice for etcd discovery? Environment variable? mDNS might be nice, too (Though I guess mDNS is kinda, almost an alternative for a subset of what etcd does). http://blogs.gnome.org/danni/2014/02/02/a-libnss-plugin-for-docker/ looks interesting too.
I read the Jumper post thing when it was HN. I need to think about that some more.
0x09 · 2013-11-13
A year ago, libav developers introduced a tool to translate a subset of C99 syntax in order to build libav with Visual Studio* . At the time Microsoft famously recommended that developers wanting modern C language features simply use C++ instead* . For a long time, up until earlier this year* , it was thought that C in MSVC had been permanently relegated to legacy support. Even for those of us who don't develop for Microsoft platforms, the attitude towards adoption of newer C standards has ostensibly had a negative impact. Which is why, even in lieu of full conformance, it's refreshing and a good sign to see this tool become unnecessary with the public release VS2013 today.
* http://blogs.gnome.org/rbultje/2012/09/27/microsoft-visual-studio-supp…
* http://www.infoq.com/news/2012/05/vs_c99_support
* http://msdn.microsoft.com/en-us/library/vstudio/hh409293.aspx
rammark · 2013-05-13
Unfortunately the best data I can find are from 2010 [1], but Red Hat only contributes 16.3% of the commits to GNOME.
[1] http://blogs.gnome.org/bolsh/2010/07/28/gnome-census/
userulluipeste · 2013-03-21
...you're twisting my arm now, you know? Why a plain C99-to-C98 convertor it's relevant? The author explain it better in one of his blog posts:
https://blogs.gnome.org/rbultje/2012/09/27/microsoft-visual-studio-sup…
Quote:
"Reality is, many of these C language features are cosmetic extensions introduced in C99 that are trivially emulated using classic C89 syntax."
mtrichardson · 2009-05-22
Depends on how easily it is to integrate into your project. For instance, for Django applications, there's django-openid-auth (see http://blogs.gnome.org/jamesh/2009/04/14/django-openid-auth/ and https://launchpad.net/django-openid-auth ) and Simon Willison is almost ready with his new plugin at http://github.com/simonw/django-openid/tree/master . These plugins are just drop in and go for the most part.
When you have tools like this, seems worthwhile to do so.
jchw · 2025-11-21
In my opinion, three basic things are needed:
- Device emulation: uinput covers this; requiring root is reasonable for what it does.
- Input injection. Like XTEST, but ideally with permissions and more event types (i.e. tablet and touch events.) libei is close but I think it should be a Wayland protocol.
- UI automation: Right now I think the closest you can get is with AT-SPI2, for apps that support it. This should also be a Wayland protocol.
None of these are actually easy if you want to make a good API. (XTEST is a convenient API, but not a particularly good one. Win32 has better input emulation and UI automation features IMO.)
Also the tangent about how crazy the compatibility layers are is weird. Yes, funny things are being done for the sake of compatibility. XWaylandVideoBridge is another example, but screen sharing is an area where Wayland is arguably better (despite what NVIDIA has to say) because you can get zero copy window and screen contents through PipeWire thanks to dmabufs.
Some of the lack of progress comes down to disagreements. libei mainly exists, by my best estimate, because the GNOME folks don't like putting things in Mutter, and don't want to figure out how to deal with moving things out of process while keeping them in protocol. (Nevermind the fact that this still has to go through Mutter eventually, since it is the guy sending the events anyways...) However, as far as I know, lack of progress on UI automation and accessibility entirely comes…
zahlman · 2025-06-13
The sheer petulance of the Xorg developers is really quite stunning, not to mention the obsession they demonstrate with the politics of their enemies (the ones they make on political grounds). For example, here's Jordan Petridis:
https://mastodon.social/@alatiera/114661446785833161
Imagine proposing that people who fork an open source project, out of frustration that you don't maintain it, are thereby doing something wrong. Imagine publicly celebrating "killing" an open-source project that your(?) community somehow "owns".
Imaging going on at length about everything you can dig up about the politics of someone who has wronged you; now imagine feeling wronged because the other party exercised the rights granted under the MIT license. A reminder here that the definition of Open Source, as curated by the OSI, requires "The license must not discriminate against any person or group of persons." (https://opensource.org/osd). Not for any reason, including not liking their politics. Not even if you think they'll discriminate against someone else (I see no actual reason to believe this of Weigelt). As long as they follow the license you grant them.
And then there's this blog post about how X11 support is being dropped from GNOME:
https://blogs.gnome.org/alatiera/2025/06/08/the-x11-session-removal/
Try to imagine a right-winger signing off a blog post with something analogous, completely unrelated to the technical content of the post. I can't. (I'm not quoting it because a) I'm…
aecsocket · 2025-04-20
This opinion of "Gnome is killing customization" is something I see quite a lot, but which I think people take the wrong way. It's absolutely true that Gnome is designed to be less themeable than other DEs like KDE, or individual WMs - and by extension, GTK apps and apps designed to be used on Gnome are harder to customize/break more when you do theme them. But I disagree that "customization of Linux [being] half-dead" is a bad thing; on the contrary, I support the lack of theming options, and I like that there's someone on the Linux desktop that pushes this hard for consistency.
To make my biases clear: I'm a software developer that uses Gnome daily, and is developing a GTK/Adwaita app. I used to rice a lot back in the i3 days, but I don't particularly care about that nowadays, and stick to the defaults when I can. For my purposes, GNOME and Adwaita is perfect since it's very opinionated by default, and you can make good looking apps with minimal effort. Since all Adwaita apps are supposed to look similar and follow the same HIG, most of my desktop apps have the same look - but more importantly, the developers of the apps can also be confident that their apps look correct on my desktop. This is something that developers in the GTK space generally want, and for good reason[0].
One argument is that you as a user of the desktop should be able to have the final say on how your apps look, which is a totally valid take! And there are DEs, WMs, and apps which give you this…
Conan_Kudo · 2023-08-15
I have recommended SUSE Linux Enterprise Desktop in contexts where people have talked about supporting desktop openSUSE financially. I have also previously mentioned SUSE as an option in other forums.
As an engineer-centric Linux distribution vendor, they are also well-equipped to do engineering work upstream (and have an upstream-first mentality, which I appreciate). Red Hat and SUSE engineers often work hand-in-hand upstream in many communities, including desktop ones like GNOME and KDE.
They're a perfectly fine option if you want to go that way.
But in this context, we're talking about Red Hat's ability to invest in desktop Linux. And that is directly mapped to RHEL Workstation sales and (to a lesser extent) adoption of Fedora Linux (as a halo driving RHEL server/cloud and OpenShift adoption).
People also seriously underestimate how much work Red Hat puts into virtually every sphere of the Linux space[1], including the desktop. Many engineers spend a lot of time working in projects that don't directly pay off for RHEL because it either benefits the larger community or feeds into something they do care about in RHEL. It continues to surprise me how remarkably altruistic Red Hat is for a company. But that can only go so far. People still need to live and eat.
To give an idea of something that wouldn't have been possible without Red Hat: NVIDIA opening up their drivers last year[2][3]. Red Hat has been furiously working to rework Nouveau to take advantage of the…
chrsw · 2023-01-01
The best treatment I've read that explains what seperates the Linux desktop from others is still here: https://blogs.gnome.org/tbernard/2019/12/04/there-is-no-linux-platform…
In a nutshell, and in my words, the Linux ecosystem consists of a loose collection of related, but fragmented, software, devices, documents and practices. This is fine, as long as you understand what you're dealing with.
Much longer version (I don't have a blog where I can post this):
Consumer devices are more than that though. They are finished, supported products engineered and designed for specific use cases or demographics of users. Consumer devices like these sound great for most people but for some people, it's not what they want. If a consumer device on the market doesn't meet the needs of their application, for example, they need to go elsewhere like commission a custom design or build it themselves. Again, you have to understand what your needs are and what offerings are out there.
You have to be honest about what you're looking at. I have a MacBook and an iPhone. I have certain expectations from these devices, in terms of features and limitations. And a lot of what I expect from these devices is inspired by where they come from: Do they come from a company? What type of company is it? What are the company's values and goals? What does the company think of me, the customer? From the answers to these types of questions I use the devices accordingly. You don't even need to get into the…