User: Password:
|
|
Subscribe / Log in / New account

Clasen: Introducing GtkInspector

Clasen: Introducing GtkInspector

Posted May 20, 2014 2:57 UTC (Tue) by coulamac (guest, #21690)
In reply to: Clasen: Introducing GtkInspector by jospoortvliet
Parent article: Clasen: Introducing GtkInspector

Citations needed. Where have the GIMP, XFCE, and GCompris stated that they would like to switch to Qt? (hey, it could be true, but it's news to me).

GTK had a nice ecosystem of desktops, including GNOME, XFCE, Mate, and Cinnamon.

GTK development has been very active. This article is just one sign of that activity. Others include new widgets, more Wayland integration, better documentation, closer bundling of GLADE, better integration with other operating systems, a new canvas from the makers of Clutter, etc. It's actually a rather exciting time to be working on/using GTK.

You don't like C? That's cool. Use C++ with GTKmm. Python, JavaScript, and Vala (a Java/C# like language) bindings are also well developed. As another poster commented, it is much easier to subclass in these other languages.

Qt is nice. So is GTK. I really don't understand all the energy here devoted to killing GTK. Developers enjoy developing it. Users enjoy using it. Yay for them. Why attack their preferences? Do you think that somehow the attack will make Qt better?


(Log in to post comments)

Clasen: Introducing GtkInspector

Posted May 20, 2014 14:01 UTC (Tue) by HelloWorld (guest, #56129) [Link]

> Qt is nice. So is GTK. I really don't understand all the energy here devoted to killing GTK. Developers enjoy developing it. Users enjoy using it. Yay for them. Why attack their preferences? Do you think that somehow the attack will make Qt better?

GTK needs to go away because it hampers interoperability. When I write an application and I want to use a GTK widget written by person A and a Qt widget written by person B, I'm fucked, I can't use them together. And users end up with inconsistent desktops because GTK to this day cannot use the KDE file picker dialog. Perhaps they'll fix that some day (I doubt it), but that's just the tip of the iceberg.

Clasen: Introducing GtkInspector

Posted May 20, 2014 18:46 UTC (Tue) by coulamac (guest, #21690) [Link]

If I understand you correctly, you do not like certain of GTK's widgets and, because you use programs which in turn use GTK, you are irritated that you must use those widgets. This, I understand, is particularly irritating because the corresponding Qt widgets, which you prefer, differ in some material fashion.

As I see it, you have three realistic options: 1) write code that would aid GTK's interoperability widget-wise with Qt (to the extent it's possible); 2) stop using GTK programs and only use Qt ones; or 3) stop worrying and learn to love GTK as well as Qt.

You propose 4): everyone abandon GTK and refactor their projects to use Qt instead of GTK. I assume you propose 4) because there are certain GTK programs you will not abandon because there is no Qt equivalent or one not suitable to your needs.

One problem with 4), however, is that you must convince the developers of each of those programs to make the switch, which is not a trivial undertaking. Those developers may like developing in GTK. Those developers may actually help develop GTK. Those developers may, at the very least, be indifferent to the toolkit and, therefore, would not like to incur the pain and suffering of changing from one toolkit to another.

The other problem with 4) is that there may be users who prefer the way GTK widgets work. To them, the problem may actually be the opposite: they get irritated when they work with Qt programs that work in subtle (or obvious) ways differently than what they are used to because of the toolkit. You are asking them to abandon what they like to accommodate what you like.

Your proposal 4) is unrealistic. Further, even if everyone (developers and users alike) did magically agree with you, the process of refactoring each program and each desktop (GNOME, XFCE, Cinnamon, Mate, etc.) to Qt would likely take years. That is years of development wasted in otherwise quashing bugs, adding features, polishing interfaces, and optimizing code.

Logically, your position does not make sense and would not substantially further the Linux desktop ecosystem, at least not anytime soon. We would be better served cheering on the different projects, no matter what language or widget set they depend on, so long as the project promotes free software. The discourse here, I fear, just puts forward stop energy.


Clasen: Introducing GtkInspector

Posted May 22, 2014 9:08 UTC (Thu) by jospoortvliet (subscriber, #33164) [Link]

here for gcompris. They hope to finish the Qt port at the Randa meeting being organized this summer.

No idea about GIMP and XFCE, I'm sure some people there are looking at it but I don't think the entire projects are ready for that - yet. LXDE has already moved, as you know...

And sure, GTK development is active. It does form the base for GNOME Shell and there, lots of interesting stuff happens. But not much interesting happens for non-GNOME projects, that's the thing...

About attacking, well, the thing is: GTK simply isn't a good choice for a independent, third-party app. App developers moving to Qt would benefit users, both because Qt integrates far better in non-GNOME-Shell desktops and because Qt is cross-platform, higher quality and easier to use. It would be good if that was public knowledge, so people judging potential Linux development don't try GTK and come away with a feeling that the Linux desktop tech is lightyears behind the competition. It isn't, as long as you try Qt...

Of course, for writing a simple app for GNOME Shell, I'm sure GTK is far easier and better than Qt as it offers all these little conveniences that the GNOME Shell designers want you to use. That's fine, but many of these features break interoperability (see the huge discussion about CSD breaking GTK apps running on a non-GNOME-shell desktop for example). So if you want your app to be used outside of Shell - use Qt.

Clasen: Introducing GtkInspector

Posted May 23, 2014 1:57 UTC (Fri) by coulamac (guest, #21690) [Link]

Your preferences do not equal everyone's preferences. Just as there are current developers on Linux who prefer to use GTK over Qt, there may be *new* developers who will also prefer GTK. One size does not fit all, nor does one toolkit satisfy all developers. If a new developer should try GTK and not take a liking to it, there is nothing stopping her from trying Qt, which is hardly a secret, et vice versa. Your concern that GTK will give Linux a bad name seems unfounded at best.

Your attempt to ghettoize GTK to Gnome Shell (and small apps) is also unfounded. GTK predates Gnome Shell by many years and is used by multiple desktops. XFCE uses GTK. Mate uses GTK. Cinnamon uses GTK. You ignore this evidence when you insist that GTK is only suitable for, in essence, Gnome 3. Large programs use GTK. The GIMP does. Inkscape does. Evolution does. Nautilus does. Nemo does. If you include GLib in GTK, GStreamer uses the framework. These are just a few examples.

I fear you are continuing to fight the KDE/Gnome wars of the last decade. That's sad because many people worked very hard to put such destructive attitudes behind us. See the foundation of freedesktop.org or the joint adoption of DBus or the joint Akademy/GUADEC conferences. This does not have to be a zero-sum game. We can encourage each other and support each other. Free software can prosper if we work together rather trying to destroy the competition. Your efforts here do not help anyone, even Qt.

Clasen: Introducing GtkInspector

Posted May 23, 2014 16:32 UTC (Fri) by HelloWorld (guest, #56129) [Link]

Qt for X11 switched to the GPL in 2000, Qt for Windows switched in 2005 and the first LGPL release was in 2009. Most of the projects you mention were first released before 2000 or forked from such projects, so it's fair to assume that they first chose GTK for licensing reasons and then stuck with it because of the huge amount of work that porting would involve. IOW, the existence of these projects doesn't really say anything on the current situation.

What does say something is that projects like Subsurface, Wireshark or VLC are migrating away from GTK _despite_ the amount of work that involves.

> I fear you are continuing to fight the KDE/Gnome wars of the last decade. That's sad because many people worked very hard to put such destructive attitudes behind us.
I don't see anything destructive in his comments.

Clasen: Introducing GtkInspector

Posted May 24, 2014 7:38 UTC (Sat) by mbunkus (subscriber, #87248) [Link]

Quite correct for my little project (MKVToolNix) at least. Back in 2001 when I started working on a GUI for one of the command-line applications I looked at the various cross-platform toolkits available at the time. Luckily I'm using C++ so the selection was more broad, but the only three contenders left were Qt, F… something (can't remember the name) and wxWidgets (which uses GTK+ on Linux, MS' own stuff on Windows). I only chose wxWidgets due to Qt not being available for OSS projects on Windows at that time.

Nowadays I'm trying to switch, too, for many of the reasons listed in these comments, even though re-writing the whole application from scratch is a huge amount of work. But it's more than worth it.

Clasen: Introducing GtkInspector

Posted May 24, 2014 9:24 UTC (Sat) by patrick_g (subscriber, #44470) [Link]

I use this opportunity to thank you for MKVToolNix. It's a reliable and very useful software.
Thanks a lot!

Clasen: Introducing GtkInspector

Posted May 23, 2014 18:21 UTC (Fri) by boudewijn (subscriber, #14185) [Link]

"Your attempt to ghettoize GTK to Gnome Shell (and small apps) is also unfounded."

It's what the GTK developers themselves say: "The answer is that GTK+ is primarily intended to be used on the GNOME desktop, using X11 as the backend." and "Finally, he said, people ask whether GTK+ is focused on creating "small apps" or "large applications," and his answer is "small apps." In other words, GTK+ widgets are designed to make it easy and fast to write small apps for GNOME: apps like Clocks, rather than GIMP or Inkscape."

See http://lwn.net/Articles/562856/.


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