Making your mixed KDE and GNOME desktop look cool

Most people use a mix of QT/KDE and GTK+/GNOME applications on their Linux system. Because both QT and GTK+ use their own widgets (which are all GUI elements, like buttons, toolbars, menus, checkboxes, etc…) and theme engine, QT and GTK+ applications look different from each other. This is especially bad if you use KDE in Debian: in that case by default no GTK+ theme is configured, making GTK+ applications, like Firefox, look like ugly Windows 95 applications. Mandriva on the contrary does use a common graphical theme for both GTK+ and KDE applications (called Ia Ora), but it’s not easy to change the GTK+ theme if you use KDE or the QT/KDE theme if you use GNOME.

Here’s a howto for Debian and Mandriva which explains how to make your desktop look nice if you’re using a mix of KDE and GTK+. Because Ubuntu is based on Debian, this howto might also apply to Ubuntu, but I have not verified this.

Pre-requisites

I assume that you are running either Debian Squeeze (testing) or Mandriva 2010.0 or a more recent version of these distributions. For Mandriva 2010.0, you also need to have activated the Backports repositories. You can activate them in the Mandriva Control Centre – Software Management – Configure media sources.

Using GTK+ applications in KDE

If you want to use a unified look for KDE and GTK+ applications, then I recommend using the QtCurve theme. Just like Mandriva’s Ia Ora, it consists of a theme engine for KDE and another one for GTK+ which looks exactly the same.

In Mandriva you install the kde4-style-qtcurve package. If you have urpmi’s “suggests” support enabled (it is by default), then this will automatically pull in both the KDE 4 and the GTK+ theme, and also systemsettings-qt-gtk, a tool which lets you choose the GTK+ theme to use in KDE.

In Debian you need the packages qtcurve and also system-config-gtk-kde to set up the GTK+ theme.

Once you have installed all packages, you can start KDE’s System Settings and go to Appearance. In the Style page, you can choose the theme to use in KDE applications, while in GTK+ Styles and Fonts, you select the theme used by GTK+ applications. If you choose QtCurve in both, KDE and GTK+ applications will look very similar and even use the same KDE icon set.

The QtCurve theme comes with different pre-defined styles. If you don’t like the default look of QtCurve, go to System Settings – Appearance – Style, and click on the Configure… button next to the QtCurve widget style box. Under the button Options there, you find the list of predefined styles.

Of course you can also further fine-tune the theme by going to the Colors and Windows pages in System Settings – Apperance, where you can choose a colour set and window manager theme to your liking (QtCurve has a matching colour set and window manager theme, but of course you can choose something else if you want).

Using QT/KDE applications in GNOME

If you are using GNOME and want to make QT and KDE applications look like all GNOME applications without using Ia Ora, you have to run the qtconfig application. In both Mandriva and Debian, you need to have the qt4-qtconfig package installed. Then in qtconfig you select GTK+ as the GUI style to use. If you run KDE applications, you will also need to set the KDE theme to GTK+. This can be done by running
$ kwriteconfig --file kdeglobals --group General --key widgetStyle gtk
in a terminal window. Before executing this command, you will need to have the kdebase4-runtime package installed in Mandriva or kdebase-runtime in Debian.

Debian Squeeze running KDE with the QtCurve theme.
Debian Squeeze KDE 4.3 running Dolphin and Iceweasel (Firefox) 3.5 with the QtCurve theme (Shiny Glass style), Slim Glow Plasma theme and desktop effects enabled.

10 Replies to “Making your mixed KDE and GNOME desktop look cool”

  1. >,,,while in GTK+ Styles and Fonts, you select the theme used by GTK+ applications

    Maybe this is a silly question, but my Mandriva system is KDE-only (which is what you get when you install from the live CD). I’m sure GTK+ is there, but how do I get to this ‘GTK+Styles and Fonts’ thing without installing the whole GNOME desktop?

      1. Ummm. I’m running Mandriva 2010, and I don’t think my KDE System Settings has a ‘GTK+ Styles and Fonts’ option.

        I noticed that OpenSuse11.2 had this, but Mandriva didn’t (unless they just added it – I’ve been doing running updates since the beta and never installed the final release).

        1. For the second time, please read the article.

          Quote:

          In Mandriva you install the kde4-style-qtcurve package. If you have urpmi’s “suggests” support enabled (it is by default), then this will automatically pull in both the KDE 4 and the GTK+ theme, and also systemsettings-qt-gtk, a tool which lets you choose the GTK+ theme to use in KDE.

          1. Okay, you got me. Of course, you could’ve included the quote the *first* time you snarked out at me. But thanks anyway.

    1. Yes, it’s possible to get to the same result without backports. However, there are some improvements with backports:

      – Backports contains a newer version of QtCurve
      – The kde4-style-qtcurve package backports package contains the necessary RPM “Suggests” so that all things you need are installed automaticlly without having to find all necessary packages by hand
      – With the backports package it’s possible to install systemsettings-qt-gtk without installing the buggy and unsupported gtk-qt engine.

  2. Why not use QGtkStyle, it makes Qt4 apps use the GTK style, it actually works much better than the other way around (qt-gtk-engine) which causes all sorts of weird side effects, especially when switching between desktops and changing styles and often doesn’t look right.

    QGtkStyle is installed by default. In qtconfig set the style to “desktop default” and in gnome your qt apps will look like gtk apps (in qt4.6 it will even start using icons from the icon theme you are using)

    In kde you can select the GTK+ style in kde systemsettings and use a gtk style to your liking. Use the gtkthemeswitch for this or only install the qt-gtk-style engine control module (forgot the name but you packaged it so you know what I mean), don’t install the engine though!

    1. Note that I do not use the gtk-qt-engine. I agree with you that it’s buggy and an ugly hack. Instead, I use QtCurve which (as far as I know) just consists of native QT and GTK+ themes, like Ia Ora.

      I recommend using QGtkStyle in the second part of the article for people using QT or KDE application in GNOME. I think it’s a bit strange to use QGtkStyle in KDE itself however. Lots of people who prefer KDE, do not like most GTK+ themes, so it seems more logical to make GTK+ applications look like KDE than the other way round if you use KDE as your main desktop. Anyway, the end result is the same of course and it’s all a matter of taste. It’s good that there are different options so everyone can find whatever he/she likes best :-)

Comments are closed.