|
|
Log in / Subscribe / Register

GTK 4.0

GTK 4.0

Posted Dec 18, 2020 8:16 UTC (Fri) by swilmet (subscriber, #98424)
Parent article: GTK 4.0

As a developer I use GTK since 2009 (with GTK 2). During the GTK 2 -> GTK 3 transition, I was developing just a small app (around 10k lines of code). After a failed attempt to port to GTK 3.0, I successfully ported my app to GTK 3.4 one year later, but the experience was rather painful, and there were a few regressions.

Now, almost 10 years later, it's an order of magnitude more code that I develop and maintain. Composed of libraries plus several applications that use GTK 3. And, after reading the GTK 4 porting guide, I'm definitely not excited. Over the years, being a GNOME developer has made me suffer from too much stress, maybe I should have given up years ago. I now regret not investing time learning C++ and Qt.

The GTK documentation is still incomplete. The GTK 4 porting guide is not exhaustive. And some new classes lack proper documentation.

The language bindings! Ha! It's both a benediction and a curse. In GNOME, many many software components are being rewritten in other languages. There has been the C# wave, the Vala wave, a JavaScript wave, now the Rust wave. When a module is "semi-finished", it gets rewritten in another language, or gets replaced by another module written from scratch.

In parallel to the different programming languages, there has been lots of UI paradigm changes. Writing a GTK app with a traditional UI (menubar plus toolbar) has become more and more difficult over the years, if not impossible with GTK 4. Imagine LibreOffice with a single "sandwich menu" - it's ridiculous.

The GTK developers develop GTK in their bubble, with gtk-demo as (almost) the only test application for GTK 4. There is no consultancy company knowing the needs of their users, and the GTK developers apparently don't listen enough to the application developers. It's a vicious circle.

Oh, and GTK 4.0 has just been released that they already think about GTK 5, another pile of API breaks around the corner. It's far from finished.

Without counting the fact that the MS Windows and macOS integrations are far from perfect. It works, more or less, but there are really sharp edges.

I know my criticism won't be appreciated, but I've *tried* hard, over the years, to improve things instead of sitting there and just complaining. My feeling is that I'm like a fish swimming up the river against the current.


to post comments

GTK 4.0

Posted Dec 18, 2020 15:22 UTC (Fri) by Xenophon (guest, #143699) [Link]

The good news is that GTK 3.x is not going away any time soon. Nor is it unsupported by the GTK community. While you could port your applications to GTK 4.0 now, you certainly do not have to do so, at least not in the near future. It might even behoove you to wait a bit while more documentation is written and the porting guide is fleshed out even more.


Copyright © 2026, Eklektix, Inc.
Comments and public postings are copyrighted by their creators.
Linux is a registered trademark of Linus Torvalds