On Wed, Jul 25, 2001 at 05:57:50PM +0100, Adam D. Moss wrote: > Michael Natterer wrote: > > after some hours of torturing it with perl and some manual hacking, > > i got gimp running on current CVS glib/gtk+. > ... > > (applying it means that if you want to hack or simply use gimp 1.3, > > you will need glib, pango, atk and gtk+ HEAD from CVS too). > > I few questions: > > * What are pango and atk, and why do we suddenly require them (if > indeed we do)? Pango is the text layout foundation for gtk (to abuse terminology slightly). It provides a uniform way to do things like multi-lingual layouts (coupling left-to-right and right-to-left text using different character sets on the same line). This may not seem like such a huge win for gimp, but it is a necessary requirement for Gtk 2.0 now. The atk package is the accessibility toolkit and provides ways for non-visual and non-keyboard/mouse interaction with gtk-based application. This is one of the concrete results of Sun's input into the Gnome community. They both advocated the need for such an elephant and produced the code. > * Are there compelling advantages to using CVS-GTK which outweigh > the cons of forcing developers and users to upgrade? Is GTK 1.3 > not backwardly compatible with the GTK 1.2 API? My concern is > that with such a casual-user oriented application as GIMP we > can easily lose users by the wayside with each additional > stipulation. Gtk 1.3 is the development branch, so it can't be relied upon for release verisons of other software. It will eventually metamorph into Gtk 2.0, which will be the stable branch. It has never been a secret that this will not be backwards compatible with Gtk 1.2. If you look in the gtk source code, there is a file called Porting-2.0.txt (or something like that) that explains the changes needed to go from 1.2 -> 1.3/2.0 to make an application simply run. This does not cover the new gee-whiz features that have been added to the 1.3 branch -- it is simply a porting guide. The required changes are reasonably mechanical and not overly difficult (based on my experience of porting about four apps so far). For CVS gimp, it is definitely not a problem to require the current bleeding edge GTK. Casual users should not be using this if they are not interested in tracking dependencies. When Gtk-2.0 is released, it will be rapidly shipped with all the distributions and requiring/requesting users to upgrade should not be an issue. Until that time, it would be crazy for 1.2 versions of the Gimp to depend on this version of gtk, since it is still only in slightly-frozen API stages and many bug fixes, etc are still occurring. > * For those of us with pieces of the tree's core which diverge > somewhat from the trunk, how much of a no-brainer is converting > our code to GTK 1.3-isms? Read the porting document i mention above. It's not that difficult -- truly just search and replace in most cases. Cheers, Malcolm -- Quantum mechanics: the dreams stuff is made of.