Planning the GNOME development platform 2.0

Michael Meeks
michael@ximian.com

Miguel de Icaza
miguel@ximian.com

Quick Links

GNOME 2.0 development platform

Integration of various of the existing GNOME libraries would be ideal to minimize dependencies, and to provide a more integrated platform.

Currently gnome-libs requires Gtk to compile, so even our non-UI portions of gnome-libs require people to install Gtk+ and X. Various of our technologies are not bound to X, and the new Glib 2.0 will enable us to fully drop the requirement on Gtk+/X.

We want to split gnome-libs into two pieces, one containing code that does not depend on Gtk+ and X and another one that does. Here is a plan:

  • gnome-libs-2:

    This will consist of the following modules: libgnome, bonobo-core, gnome-vfs, gnome-print-core.

  • gnome-libs-2ui:

    This will consist of the following modules: libgnomeui, bonobo-ui, gnome-vfs-ui, gnome-print-ui, gnome-glade and zvt.

Given that Gtk 2.0 has most of the features to create rich applications (something that we used gnome-libs for in the past), the motivation to use gnome-libs is smaller now.

We want hence, to make gnome-libs applications be those that are enhanced to use Bonobo. (Since gnome-libs will now use GConf, there is a CORBA dependency there anyways).

Action Plan

Using the Gtk+ 2.0 platform

Just a list of random thoughts regarding the use of Gtk+ 2.0 in Gnome-Libs 2.0:
  • GnomeStock becomes a wrapper around GtkStock to preserve source compatibility.

  • GnomeDialog will be marked as "deprecated", but it is not possible to wrap GtkDialog (according to Havoc, there is little gain, and too much pain to be suffered).

Thanks to

Thanks to Havoc Pennington, Jacob Berkman, Federico Mena, Lauris Kaplinski and all the helpful comments on gnome-hackers@gnome.org