GTK+ target version [WAS Re: new dev branch stuff]

Brian J. Tarricone bjt23 at cornell.edu
Sun Jan 30 03:34:12 CET 2005


The more I read this thread, the less of a strong opinion either way I 
have.  (Hmm, that sounded rather Yoda-ish.)  Originally I was firmly in 
favor of 2.4 as a target, but now I'm not so sure.

Jeff Franks wrote:

> Olivier Fourdan wrote:
>
>> I think targeting GTK+-2.6 is a bad idea.
>
> I don't agree.  GTK+ 2.6 is the latest  stable. By the time Xfce 4.4 
> is out 6 or 8, or may be 10 months would have passed. By that time 
> GTK+ 2.8 would have been released (planned for the middle 2005) and 
> 2.4 will be quite old.

Well, let's look at it this way.  After 4.0.0 was released, it was 
decided that the target for 4.2 would be gtk 2.2.  In mid-March, gtk 2.4 
was released.  Then 2.6 was released, and xfce 4.2.0 was released 
shortly afterwards.  So we targeted 2.2, with two major releases of gtk 
present when we released 4.2.0.  Ok, that sounded confusing.  So, with 
extrapolation, we have:

xfce 4.0.0.  Targets gtk 2.0.  Latest gtk version available at release: 2.2.
xfce 4.2.0.  Targets gtk 2.2.  Latest gtk version available at release: 2.6.
xfce 4.4.0.  Targets gtk 2.4.  Latest gtk version available at release: 
2.10.

Of course, one can easily see that that's not really sustainable.  If 
gtk 2.10 is available and our new release targets 2.4, we're potentially 
missing out on a lot of useful features that we either have to backport, 
provide wrappers for, or just not use entirely.  That kinda sucks.  Even 
if the new gtk version at 4.4.0 release time is 2.8, we're still losing out.

>> Not because I don't like GTK+-2.6, not even because I don't like the
>> features added in 2.6, but simply because of the target audience of
>> Xfce.
>
> It sounds a bit like programming-down to your perceived target 
> audience, with the exuses like "that's all they'll need, or want, or 
> will understand".

Nah, that comparison really makes no sense at all.  It's not about not 
providing features because "they don't need them", it's about supporting 
a wider range of people, especially those with older hardware running 
older - even unsupported - distros.

>> I don't want Xfce to be yet another geek toy, requiring all the brand
>> new stuff. I think Xfce should be aimed at the most general use, and in
>> a corporate environment you very rarely see the latest versions of libs
>> or software (think RHEL for example)
>
> Xfce doesn't have to be a geek toy. The new features added to GTK+ 2.6 
> have long been present in KDE, and some in GNOME. A few of these 
> features were moved from the GNOME libraries into GTK+.  GtkIconView 
> is one,  it's a very useful widget and one that Xffm badly needs (I 
> believe an icon view for xffm is already being worked on). Trying to 
> navigate a huge filing system like Linux with a single 
> expandable/collapsable file tree is cumbersome (very OS/2-ish) and not 
> very user friendly.  (Sorry, no offence intended.)

Well, for this specific example, perhaps Xffm should be moved out of the 
Xfce core and have its own release schedule?  That way, Edscott can 
depend on whatever makes the most sense for Xffm, and not be tied into 
the core Xfce desktop's requirements, which, IMHO, shouldn't be complex 
enough to need too many advanced features.  Something that's considered 
a "core" should be just that, a core.  Having said that, a desktop icons 
plugin/extension for Xfdesktop would certainly need some kind of icon 
view, so the "core" line is a bit blurred.

>> In many places, you'll still find RH 7.2/RHEL 2.1 and gtk+-2.6 doesn't
>> work there. Every app that use a text widget (inclufing text input
>> field) in 2.6 dies with a "Bad implementation" error.
>
> Some old software there - one long passed it's end-of-life. RH 7.2 has 
> not been supported by RedHat since Feb 2002. Full spupport for RHEL 
> ceased on 30/11/2004, and deployment support ends on the 31/5/2005, 
> with only maintenance support thereafter.
>
>> An bug in GTK-+2.6? maybe, maybe not. It may simply be that GTK+-2.6 is
>> not designed for such old systems anymore. So if we depend on 2.6, we
>> shall limit ourselves to the same targets as GTK+-2.6.
>
> You don't know this for sure. What did the GTK+ guys say about it?

Actually, from some recent discussions on gtk-devel, I believe these 
problems are due to buggy X server implementations with regard to the 
RENDER extension.  I think in these cases, the extension is reporting 
that it supports a version of RENDER that it doesn't actually support.  
Actually, it could also be that gtk's runtime version-checking is messed 
up.  If that's the case, I'd expect this to be fixed at some point (via 
gtk), though it would mean a performance hit, as gtk wouldn't use RENDER 
at all on those X servers.  Bottom line: I don't think it's important 
(or worthwhile) to support buggy X implementations.  That's just my 
opinion, of course.  However, I'm perfectly happy supporting RH7.2/RHEL 
even if RH won't.  This goes under my previous comment about supporting 
people on old hardware/distros.

>> Let's keep in mind that there is no "Xfce centric major distribution".
>> RH/Fedora use and promote GNOME, SuSE and Mdk are KDE. It doesn't matter
>> for GNOME or KDE to require the latest GTK+ or Qt version because there
>> is always a major distribution that will match their requirements,
>> whatever it could be.
>>
> Xfce has a lot going for it and deserves a wider audience. Xfce 4.2 
> got some very good write-ups because of the improvments you guys made. 
> I think targeting GTK+ 2.6 would be a good for Xfce in the long run, 
> especially xffm.

I think debating this further is really pointless.  Someone (maybe me, 
but probably not) should go through and list all the feature additions 
in gtk 2.6, and then we can decide which of those we need or want for 
xfce 4.4.  If it's only one or two things, then there's really no reason 
to depend on 2.6: backporting usually isn't all that hard, especially 
for a few isolated things.  Benny already has done this for several 
things in libexo, and we should leverage that.  So, who's going to make 
a big gtk 2.4/2.6 feature comparison list?

    -b



More information about the Xfce4-dev mailing list