Xfce Forum

Sub domains
 

You are not logged in.

#1 2014-04-19 15:02:55

dollyp
Member
Registered: 2014-03-09
Posts: 28

Confused about themes

I've been looking at themes in xfce-look.org and am a little confused by the way they are categorised into GTK1+, GTK2+ and Xfce. Does this categorisation mean anything? There must be a reason why this split, but there must also be a reason why gtk themes are listed  on an xfce site.

I confess I still do not understand the difference between xfce using GTK+, other DEs using GTK2 and yet others GTK3. I presume there must be some correlation but just how similar are themes for the different DEs?

Finally I've seen themes that need something called Murrine and don't understand what this is.

Sorry for showing my ignorance.
David


Linux Mint 17 Xfce
Lenovo IdeaPad U410

Offline

#2 2014-04-19 17:36:58

ToZ
Moderator
From: Toronto, Canada
Registered: 2011-06-02
Posts: 1,384

Re: Confused about themes

Okay, I'll give this a try but be warned, it will be a long post. Get yourself a cup of coffee or tea and and make yourself comfortable. This is my understanding of themeing in Xfce.

To begin with, its important to understand what constitutes a "theme" in Xfce.

  1. The "Appearance" (Settings Manager -> Appearance -> Style) is basically the GTK component which includes the buttons, textboxes, drawing canvas, etc - everything within the borders and title bars of a window.

  2. The "Window" (Settings Manager -> Window Manager -> Style) is all the window decorations which includes the borders, title bar, maximize/minimize buttons, etc.

  3. The "Notification" (Settings Manager -> Notifications) are the popup notifications that show up when certain events occur.

  4. The "Cursors" (Settings Manager -> Mouse and Touchpad -> Theme) are the mouse cursor themes.

  5. The "Icons" (Settings Manager -> Appearance -> Icons) are the icons.

All of these components play a part in determining the "look" of Xfce as you see it on the screen.

---------

Now, GTK (Appearance style) is an interesting beast. There are difference major versions of GTK (1.x, 2.x, 3.x) that are different among themselves and even within the 3.x branch of GTK, differences between minor version (3.6, 3.8, 3.10, 3.12). In fact, these inconsistencies affect GTK3.x themes in that the themes themselves need to be updated regularly to remain compatible with the GTK3 library version installed on your system (see: http://customizemania.com/the-state-of-gtk-themes/ for one person's rant). In addition to the GTK toolkit itself, you can extend the toolkit by using what are called "engines". This is what you refer to as murrine, unico, etc. These engines extend the toolkits to allow them to provide further functionality.

Xfce officially supports GTK2. GTK2, as I understand it, has been retired and the bulk of the work is being done on GTK3. There has been some talk about re-coding Xfce to fully support GTK3, but since GTK3 seems to be a constantly moving target, the uptake has been minimal (see http://forum.xfce.org/viewtopic.php?id=7598 for an interesting discussion). If you only use GTK2 apps, you should be able to get a consistent look-and-feel. However, many apps are now based on GTK3 and this poses an interesting problem for Xfce with respect to generating a consistent look-and-feel between all of the apps. To this end, some theme author's have ported their themes to support both GTK2 and GTK3. These themes, still fewer in number but growing, provide the best option for getting a consistent look and feel (assuming of course that the GTK3 components of these themes are updated regularly as the GTK3 toolkit changes).

---------

When you look at a theme, you will notice a number of sub-folders:

toz@tecra:/usr/share/themes/Greybird$ ls
gtk-2.0  gtk-3.0  metacity-1  unity  xfce-notify-4.0  xfwm4

As you can see above, the Greybird theme has a gtk-2.0 folder (supports gtk2), a gtk-3.0 folder (supports gtk3), and xfwm4 folder (supports the window manager theme component of Xfce), a xfce-notify-4.0 folder (supports notification themes). The other 2, unity and metacity, are not related to Xfce. Greybird is one of the better themes since it supports both gtk2 and gtk3, plus offers a consistent look with an xfwm4 component and a notification component. Please also note that Greybird requires both the murrine and pixbuf theme engines to properly render the GTK components.

---------

Now as for xfce-look.org, I personally find that site confusing. They offer GTK1.x (which hasn't been used for quite some time), gtk2 and xfce theme categories. The problem is that the content in those sections doesn't particularily fit with any pattern that I can discern. Maybe, xfce themes should be xfwm (Window Manager) themes, but they should change the title and call it Window Manager themes, and then only put window manager themes there. I would also like to see a GTK2/GTK3 category for themes that contain both of those components. As well as maybe a GTK2/GTK3/xfwm category. Anyways, I digress. The easiest way to see which of the 5 Xfce theme components are being addressed by any one theme, is to review the content of the compressed files that you download. For example:

  • Axiom Dark Panel 1.6 (from the Xfce category). There are 3 downloadable files (one for debian jesse and one for debian wheezy - presumably to address the differences between the gtk3 versions shipped with those distros) and a notifications component. The debian jesse file contains a gtk-2.0, gtk-3.0, xfwm4 and openbox folder. So this file will support 3 of the 5 theme components. The notificaitons file contains the xfce-notify-4.0 folder meaning it supports the 4th component. The wheezy file also contains gtk-2.0, gtk-3.0 and xfwm4, but as mentioned earlier, this is probably to support a different version of gtk3.

  • Numbus xfwm theme (also from the Xfce category) contains 3 downloadable files (the source, a package for ubuntu-based distros and a package for fedora-based distros. Each package contains 3 different versions of the theme and each version has only the xfwm4 folder - meaning it only supports one of the 5 theme components. Note that you can mix and match theme components. If you like this window manager theme, you can find another gtk appearance theme that matches and use them together. In no way does having only 1 component in the theme package dictate its quality in any way.

  • Ambiance and Radiance theme (from the GTK2 category) (have a look at the download page to see the confusion about getting you the correct version based on the gtk3 version of your distro) contains 1 downloadable file with many versions of the theme, and each version has a gtk-2.0, gtk-3.0, xfwm4 folder. Also note that for this theme it specifically states that you need the murrine, unico and pixbuf theme engines to properly render this theme.

Anyways, I could go on but I should stop. I'm giving myself a headache. I hope this helps to somehow clear up a very confusing topic. To close this post I would just like to add that if you are looking for a consistent look and feel of a variety of GTK-based applications, try to find and use a theme that supports both GTK2 and GTK3 and that is updated regularily with every change in GTK3.

Offline

#3 2014-04-19 21:00:18

donaldbroatch
Member
Registered: 2013-03-09
Posts: 14

Re: Confused about themes

Hi,

I am the "author" of Axiom Dark Panel- although I didn't really author the theme- it's a modification of the original Axiom theme, with a GTK3 theme modified from what you rightly call one of the better themes- Greybird.

Older themes on xfce-look.org like Axiom may not support GTK3, resulting in many applications falling back to a Windows 95 look. Also worth mentioning that the same broken look can result from theme dependencies (or latest version thereof) not being installed- I made Axiom Dark Panel not have any dependencies, unlike Greybird and Ambience, for example, so it works on distros like Debian where the Stable release can be two years old and not have the latest engines.

I guess that no applications used GTK3 when Axiom was written, but now many applications use it, so a GTK3 theme is essential. You are right about the fast pace of change in GTK3 and the need to use a theme that keeps up. I can't really take any credit here. I found that the version of Axiom Dark Panel I tested on Debian Wheezy was broken in Debian Testing- GTK3 menus were broken. It's only because I was able to borrow code from Greybird that I was able to update the theme. The "Jessie" version may or may not be backwards compatible with older versions of GTK3, but I left the older version on the site until I can test this.

xfwm4 is the title bar theme set in Window Manager and also contains the close, maximise, minimise etc icons.

The Openbox folder is nothing to do with XFCE- not sure why the folder in in one version and not the other, but it's only needed if the theme is being installed on Openbox obviously.

Edit: typo.

Last edited by donaldbroatch (2014-04-20 19:26:51)

Offline

#4 2014-04-20 04:29:37

Magnus
Member
Registered: 2011-04-20
Posts: 42

Re: Confused about themes

In Gnome-Look themes under Xfce are Xfwm themes, these change the window borders and title bar. Themes under Gtk3 in Gnome-Look are themes for Gtk+ 3 apps, almost all of them include Gtk+ 2 themes for Xfce and any Gtk+ 2 apps. These are the themes you should install. Themes under Gtk2 in Gnome-Look are obsolete, they only work with Gtk+ 2 apps. If you use any Gtk+ 3 app and the theme is Gtk+ 2 only then all Gtk+ 3 apps will have a Windows 95 style which is ugly and stands out.

Also make sure the Gtk+ 3 theme works with the version of Gtk+3 you have installed, otherwise the theme may be broken. Yes, Gtk+ themes are a mess.

Offline

#5 2014-04-22 11:24:16

dollyp
Member
Registered: 2014-03-09
Posts: 28

Re: Confused about themes

ToZ wrote:

Get yourself a cup of coffee or tea and and make yourself comfortable.

I'm well into my umpteenth cup!

Thank you all for replying, and for giving me some understanding of what GTK is about. If I get you right, Xfce's GTK+ is the same as MATE's GTK2 (but with a different window manager?) and both of them are trying with varying speeds to adapt to an inconsistent GTK3. Within xfce-look I can select any theme from the Xfce or GTK2/3 categories as long as the latter also have xfwm components and presume that I can also select themes from gtk-look if they have xfwm components. Also it is best to select those that have GTK3 and are regularly updated. Otherwise themes are a mess.

Right I can now start experimenting, although I do say that the bluebird/greybird combination is hard to beat.

Regards
David


Linux Mint 17 Xfce
Lenovo IdeaPad U410

Offline

#6 2014-04-22 12:20:54

ToZ
Moderator
From: Toronto, Canada
Registered: 2011-06-02
Posts: 1,384

Re: Confused about themes

dollyp wrote:
ToZ wrote:

Get yourself a cup of coffee or tea and and make yourself comfortable.

I'm well into my umpteenth cup!

Thank you all for replying, and for giving me some understanding of what GTK is about. If I get you right, Xfce's GTK+ is the same as MATE's GTK2 (but with a different window manager?)

Yes, I believe so (I've never used mate).

and both of them are trying with varying speeds to adapt to an inconsistent GTK3. Within xfce-look I can select any theme from the Xfce or GTK2/3 categories as long as the latter also have xfwm components and presume that I can also select themes from gtk-look if they have xfwm components.

Remember that you can mix and match gtk and xfwm themes. If you like a particular gtk theme but it doesn't have a corresponding xfwm component, you can select another xfwm theme that matches. Just because a theme doesn't have all of the components doesn't mean its bad in any way.

Also it is best to select those that have GTK3 and are regularly updated. Otherwise themes are a mess.

Yes. But wait until your distro brings in gtk 3.12 to see the mess it will introduce (see http://www.reddit.com/r/linux/comments/ … all_gnome/ for more info about the Client Side Decorations controversy). Related Xfce bug report here.

Right I can now start experimenting, although I do say that the bluebird/greybird combination is hard to beat.

Bluebird is my current theme of choice. But it really boils down to preference.

Offline

#7 2014-06-13 19:09:13

the98
Member
Registered: 2009-11-10
Posts: 60

Re: Confused about themes

I don't what happened to xfce-gtk3-engine. It looks like crap now. Maybe it's related to what ToZ explained. It looked good before.

I mean, look at the calculator. It doesn't even have the window decoration.

1IKZdt8l.png

Offline

#8 2014-06-13 19:17:39

ToZ
Moderator
From: Toronto, Canada
Registered: 2011-06-02
Posts: 1,384

Re: Confused about themes

Yep, looks like gtk 3.12 at work. What you see there is the new "Client Side Decorations". What distro are you using? Arch, for example, has galculator built using gtk2 libraries (galculator-gtk2 in AUR). Perhaps your distro has done the same.

Offline

#9 2014-06-13 19:31:50

the98
Member
Registered: 2009-11-10
Posts: 60

Re: Confused about themes

It's Debian Sid. This is just an example. It happens the same with applications like file-roller. :-/

Offline

#10 2014-06-13 20:17:08

ToZ
Moderator
From: Toronto, Canada
Registered: 2011-06-02
Posts: 1,384

Re: Confused about themes

Yes, both of those apps are built using GTK3. On Arch, someone has built them using gtk2 libraries and made them available in the AUR. Not sure whether something similar exists in sid.

You'll also find zenity, network-manager-applet and gnome-games suffer from this as well. In fact, most gnome apps now.

Offline

#11 2014-06-14 03:19:06

the98
Member
Registered: 2009-11-10
Posts: 60

Re: Confused about themes

Yes, all of them in Debian's case. There is no gtk2 build available sad

Offline

#12 2014-06-14 03:42:10

ToZ
Moderator
From: Toronto, Canada
Registered: 2011-06-02
Posts: 1,384

Re: Confused about themes

Here is the debian bug report for this issue. Looks like someone's offered up a patch if you want to rebuild gtk3.

Offline

#13 2014-06-14 23:33:45

Magnus
Member
Registered: 2011-04-20
Posts: 42

Re: Confused about themes

Does xfce-gtk3-engine even work? I think it hasn't been updated since GTK+ 3.2

Offline

Board footer

Powered by FluxBB