18 November 2009

Can we have more Qt apps please?

Managing software has been sort of a hassle for me lately, as I like to keep my package base free of cross-desktop dependencies. More precisely, it has become harder to find GUI software outside of the KDE application suite that doesn't depend on Gtk.

I suspect a number of reasons is responsible for this. Ubuntu, the most popular starter distribution, uses Gnome as its default desktop, and its KDE variant permanently lags two releases behind. Gnome is also backed by GNU and Red Hat. That doesn't change the fact that Gtk is rarely updated and still lacks in functionality for me as much as it did years ago.

I plainly hate the file dialog. Sorry, there is no way I could say it politely. It is the antithesis of "having useful features". It lets me double click on folders and files (I'm used to single click), it has a vanilla file name input box, a non-obvious "select-as-you-type" feature and a half-baked location sidebar. I can't do any file operations in the dialog, or fine-tune the view. It doesn't remember its size and position. That dialog nearly makes me understand why fanboys from other platforms like to compare Linux desktops to early releases of their preferred operating system.

That doesn't mean I dislike Gnome as a desktop. It is trying hard to be an easy to understand environment without excess complexity, which isn't a bad idea when coping with non-geek users. What bugs me is the ancient GUI toolkit sitting on it. I could go and explain that to the Gnome developers like others did, but they will just flame me for not following their ideals.

If you use Gnome, it doesn't mean you can't use Qt for software development. Despite the fact that it is used by KDE as part of its application framework, it is an independent product and tries to integrate into any desktop environment as seamlessly as possible. That cannot be said of Gtk. It misbehaves (not adhering to desktop settings) and looks non-native in both KDE and Windows.

You also get not only a GUI toolkit with Qt, but a complete cross-platform application development framework plus a powerful IDE. If you don't feel comfortable with your current framework or IDE, you might want to have a look.

For the sake of fairness, my next opinion post will be critical of KDE. It is my preferred desktop and has its share of problems too.


  1. Is Qt better than C?

  2. The Qt framework uses C++ as its default language. There are Python and plain C bindings too, however.