This Time Self-Hosted
dark mode light mode Search

Styling problems: living with both Gtk2 and Gtk3

A couple of weeks ago, the harddisk in my small frontend, the one I’ve been using since last January after Yamato started acting up too much to be usable as a desktop as well, decided to give up. It wasn’t much of a bother as I was planning to replace it anyway: the small frontend was supposed to become an HTPC in short time, but for the moment it’s not of importance either since, as I noted previously I recently got a Sky subscription so that I can have most of the content I care about in my bedroom without having to spend time “finding” it.

On a slightly off topic note: I don’t really care for people who tell me I’m not smart to pay for content I could download for free… I’m not proud when I download content I care about from torrents and the like, and since I have more money than time (even though I don’t have much money) I’m pretty much okay with paying for a content subscription … in general, what I end up downloading, it’s stuff I can’t get, even paying, in Italy, such as Bill Maher’s show.

So anyway, when the disk died, which happened to be around the same time the monitor started showing a bad spot in the top-centre area, and a huge one, I decided to finish configuring the box I had lingering around, scheduled to become my new desktop. This was a box I bought for a customer, to be used as a local Asterisk server… the customer at the end had a too-unstable connection and the Asterisk server is now a virtual server in the same data center as the VoIP trunk. I originally wanted to get it running Gentoo Hardened as a desktop, but trouble was ahead: while I was okay with giving up Skype, due to SpiderMonkey, half of Gnome3 wouldn’t start on a PaX-enforcing kernel, and due to Mesa for Radeon, the rest wouldn’t either.

At the end, I disliked the Gnome 3 interface, mostly because it was asking me too much movement with the mouse to do the most obvious things, and while it might appear cool at once, the auto-expanding desktop feature made it much more complex to navigate multiple desktops than I wanted it to be — I hated a similar change in the latest OS X Lion as well, so I wanted to keep my Spaces-alike system with compiz on Linux at least. All this considered, I decided to switch to XFCE4, which seems like a decent replacement: an “usual” desktop system, a bit more minimal in some ways, that provides me with what I need, nothing more nothing less.

Unfortunately, more trouble was ahead: I started with a mixed Xfce4/Gnome3 system, then decided to downgrade most of the Gtk3 apps because they didn’t behave as I wanted them to, but the downgrade didn’t help much — I still can’t get Super-C and Super-V bound as copy and paste in Gnome-Terminal! But Evolution, both before and after downgrade, didn’t let me change the signature set on my accounts, for whatever reason. Since today I was feeling particularly frustrated by this, I decided to check the issue further and went to fix the problem once and for all… and the only solution seemed to be upgrading Evolution to latest 3.x series, argh.

It’s not like I didn’t want to upgrade Evolution per-se, the problem was having a Gtk3 application installed. And the reason for that is actually quite easy to explain: within Xfce4 you can only choose a theme, which is used by both Gtk2 and Gtk3, so one or the other ended up looking very nasty, as it would fall back to the default appearance. This wouldn’t be too bad, considering that Gtk2’s default seemed to be decent enough, but the problem is that the Adwaita theme that comes with Gnome3 is not to my liking: the gradient reminds me of Oxygen, and exactly like that, unless you h ave the whole decoration handled by the same theme, it looks silly.

After trying to build nodoka (which does not build against Gtk-3.0) I was pretty depressed until I found x11-themes/zukitwo, which takes the clever approach. Since there is little chance for a single engine to work on both Gtk2 and Gtk3, it takes two different engines (murrine and unico, respectively) and then applies themes over those to make them look as much as possible the same. Unfortunately for some reason Chromium doesn’t seem to apply the style fully, at least it doesn’t seem to change the scroll bar, that looks still the same as the original Gtk ones.

There’s only a caveat with this theme: for some reason the Xfce4 panel is set to have white text on light grey background; the solution to this is trivial though: edit /usr/share/themes/Zukitwo/gtk-2.0/widgets/panel.rc, looking for the XFCE-related entries, and change the definition style "theme-panel" into style "theme-panel-light" so that it goes back to black-on-light-gray.

And at least one problem is solved!

Comments 6
  1. Another option is KDE’s Oxygen style engine, which has stable releases of native Qt 4 and GTK+ 2 versions, and a GTK+ 3 version in its git repo that is starting to work fairly well.

  2. Using Xfce also, I solved the issue by using themes from my home/.themes :trick is to have a custom folder which contains folders of GTK2/GTK3 themes you like respectively.Thanks for x11-themes/zukitwo tip.regards

  3. I committed x11-themes/greybird to Portage for this.(ps: also using xfce)

  4. Thanks for this tip. It does the trick very nicely :-)Keep up the good work.Sandy.

Leave a Reply

This site uses Akismet to reduce spam. Learn how your comment data is processed.