Port GTK+ modules to GTK+ 3

Some GNOME modules install GTK+ modules. Since GTK+ 3 will be parallel-installable with GTK+ 2.x, the two have separate locations for their loadable modules. The location for GTK+ 2.x is $libdir/gtk-2.0 (and its subdirectories), for GTK+ 3, the location is $libdir/gtk-3.0 (and its subdirectories). For some kinds of modules, namely im modules and pixbuf loaders, GTK+ keeps a cache file with extra information about the modules. These cache files are located in $sysconfdir/gtk-2.0 for GTK+ 2.x. For GTK+ 3, they have been moved to $libdir/gtk-3.0/3.0.0/. The commands that create these cache files have been renamed with a -3 suffix to make them parallel-installable.

Note that GTK+ modules often link against libgtk, libgdk-pixbuf, etc. If that is the case for your module, you have to be careful to link the GTK+ 2.x version of your module against the 2.x version of the libraries, and the GTK+ 3 version against the 3.x versions. Loading a module linked against libgtk 2.x into an application using GTK+ 3 will lead to unhappiness and must be avoided.

The objective of this Gnome goal is to make these modules available for both GTK+ 2.x and GTK+ 3.

Status of this goal

{i} Tip: If you choose to work on a module, create the bug report on the GNOME bugzilla for the relevant module, and make it block bug <<insert here a link to the tracker bug>>. This way people will know someone already works on it, and won't duplicate the work you're doing.

State

Markup

todo

<: #ff8080> todo

patch

<: #ffcc50> [[GnomeBug:xxxxx|patch]]

done

<: #80ff80> [[GnomeBug:xxxxx|done]]

not needed

<: #80ff80> not needed

Tarball

Status

GNOME modules

at-spi2-atk

done

canberra

done

done in 0.25

gtk-engines

done in 2.90

librsvg

done in git

PackageKit

done in git master

Others

bug-buddy

patch

GParted

not needed

gtkparasite

patch

ibus

fixed in git

libwmf

to do

Initiatives/GnomeGoals/PortGtkModules (last edited 2013-12-18 13:44:52 by LuisMenina)