← Back to team overview

lubuntu-desktop team mailing list archive

About GTK2 -> GTK3 Migration, a critical issue

 

I'm not sure what Lubuntu devs will do on this issue, but from the LXDE
side, there is no plan for the migration at this moment. For now, migration
to gtk3 brings much more problems and bugs with no visible benefit. XFCE
also keeps using gtk2 in the near future.
The Chromium browser, is going to use gtk2 for quite a long time, too. They
needs to support some older commercial systems on which gtk3 is not
available. For current applications used in LXDE, migration to gtk3 brings
no benefit but the work needs to be done is very huge.

The problems we will have after the migration:
1. PCManFM: desptop icons will be broken and this part needs some sort of
rewrite for gtk3. In addition, some theming stuff uses gtk2 only features.
2. LibFM: this part still uses much GTK2 APIs. Though I already started the
preperation for migration, this won't happen recently. As gtk3 now changed
its user input handling and the change is not backward compatible, I'm not
sure what bugs this will bring.
3. The XSettings daemon inside LXSession doesn't seem to be working for both
gtk2 and gtk3 at the same time.
4. LXAppearance cannot configure gtk2/gtk3 at the same time. Technically
it's not possible to make it work for both of them at the same time.
5. LXPanel is completely broken under gtk3. The work needs to fix the panel
and port it to gtk3 is even more than developing a new panel. Hence, I plan
to develop a new one based on gtk3 from scratch later. I will use libwnck at
that time to avoid some low level X11 hacks. Some new widgets provided in
gtk3 are useful for the new desktop panel. This could decrease much
maintaince load and many unresolved bugs. I'll also do some UI redesign
then. For now, migration to gtk3 for this one is 100% impossible and nobody
is going to do it.
6. Migration of other components are possible, but since the major
components still need more love, spending the time for migration to gtk3 for
the least important components is pointless.
7. GTK+ 2 and gtk+ 3 modules are incompatible. So I'm not sure what will
hapen to IM module (input method) after the migration. We will need two
different IM modules. One for gtk2, and the other one is for gtk 3.
Otherwise we cannot type non-English characters.
8. GTK2 and 3 programs can coexist, but this requires two librraries to be
installed on the disk and loaded at runtime. Having a desktop environment
composed by mixed gtk2/3 programs is a very bad idea since the resource
usage is doubled for no additional benefit. This is not acceptable for LXDE.
As most non-Gnome GTK+ based applications are not yet ported to gtk3, unless
we're going to depend on gnome components, migration to gtk3 now brings
harms only.

To sum up, we're not going to do gtk3 migration in LXDE now. The reasonable
timing for the migration is when XFCE and other non-Gnome programs,
especially Chromium, which has many users, start the migration.

Xubuntu will not use gtk3 this time, and it's really time for Lubuntu and
others to think about the issue.

Follow ups