Re: Status of GTK+ on Mac OS X?



Hi Paul

Paul Davis wrote:
> On Mon, Aug 31, 2009 at 8:18 PM, John Pye<john curioussymbols com> wrote:
>   
>> There's no PyGTK binary available anywhere for OS X. The only route seems to
>> be to use 'jhbuild' and John Ralls' instructions from gtk-osx.sf.net. This
>> seems unnecessarily difficult after the pleasant experience of getting
>> started with Ubuntu and even Windows.
>>     
>
> You can build GTK with the Quartz backend straight from a regular GTK
> tarball if it gets ./configure'd correctly, which it is likely to do
> by default. The issue with that is that in general you want the svn
> version because of fixes and changes - things are still at the point
> where some of the fixes are fairly important and when they appear you
> probably want them immediately.
>   

As I understand it, using jhbuild will allow me to conveniently switch
between release tarballs and svn HEAD. It's also ensuring that
dependencies are built in correct order, so I'm pretty happy to be using
that for the moment.

Having said that, I guess that tools like fink and macports replace the
jhbuild dependency rules with their own dependency checking, so in that
I guess you want to use the ./configure approach directly, right?

>> More generally, what level of support for the OS X platform does the GTK+
>> undertake to provide?
>>     
>
> there is already enough support to run two large, very complex GTK
> applications: GIMP & Ardour.
>   

I found that keyboard support in GIMP was broken. For example, in my
jhbuild build of GTK and GIMP (John Ralls approach) I found that the
command-Z undo keystroke didn't do anything. I guess there are going to
be lots of bugs like this... but perhaps if I'm working from subversion
head then there'll be less such?

I also found that there is a binary GIMP for OS X but it doesn't have
the new ige-mac-integration stuff, so it doesn't use the native Mac
menu-bar:
http://gimp.lisanet.de/Website/Overview.html

My version with jhbuild and OS X does have this, FWIW.

>> Does the organisation have a plan to resolve the
>> outstanding bugs and features in gtk-quartz?
>>     
>
> there is no organisation working on this. there are very few people
> working on this. at present, it is even proving difficult to get
> patches accepted into GTK svn.
>   

Which is to say that none of the groups with hard development funding
(GNOME foundation? Canonical? Apple?) have decided that GTK+ for Mac is
a fundable priority, I guess.

Is there a buildbot somewhere running continuous integration testing of
GTK+ with the Mac platform? What about other platforms? Is that
something that the community is lacking in order to progress this stuff?

>> Is there a consensus that support for OS X is valuable to the GTK+
>> community, or are more people of the view that we can take it or leave it?
>>     
>
> My interpretation is that its viewed as valuable but that most people
> working on GTK development do not have mac access and/or have no time
> or inclination to work on OS X themselves.
>   

For my project, I had already concluded that noone else was going to
write a Mac port, so I bought a Mac so I could do it myself. I'd be
happy to make this Mac available as a buildbot or build server of some
sort, at least for a certain fixed number of hours per day, if that was
going to be useful to people.

>> Where does this leave GTK+ compared to other GUI toolkits that offer
>> cross-platform support?
>>     
>
> it works. it has issues. Qt is in a similar position, at least if you
> want apps to be based mostly on Cocoa rather than Carbon.
>   

OK, my initial impression was that support for Mac by GTK+ was a bit
further behind. It would help a great deal if some of the old webpages
on this topic could be cleared up.

>> Why isn't the OS X port maintained on the official GNOME/GTK website?
>>     
>
> it is all in SVN and is part of official releases. i am not sure what
> makes you think otherwise.
>   

The issue is that there are no binaries. For Windows, a nice array of
prebuild binary zips are hosted on gnome.org, but for Mac, there are no
binaries, just an outdated Framework that doesn't work for me on OS X
10.5 (I couldn't find GTK+ in XCode anywhere).

For Windows, I chose to use a pre-built GTK binary installer, which I
run as part of the installation process for my binary. This approach is
easy for the user, and allows for a smaller initial download for the
case where the user already has a compatible version of GTK installed.
Not without its challenges though.

> What you should not expect, IMHO, is for there to be "a GTK/OSX
> package". You should plan on distributing the GTK to your users as
> part of the your own application bundle. If you're not planning to
> create an application bundle, you're making a serious mistake, in my
> opinion.
>   

OK, given the fact that important bugs are still being fixed in GTK-OSX
I should probably take this apporach. I'm not convinced the "py2app" are
going to meet my needs though.

My app also involves a library of source files called our "model
library"... we want those files to be user-viewable (even maybe
user-editable), so I'm not sure I can do that with just a "bundle".

> There are docs online, based partly on my initial experiments at this
> with Ardour, and then merging richard hult's own efforts, on how to
> bundle an app so that it works with an in-bundle version of GTK. This
> may be trickier with PyGTK because you need to set up some fairly
> specialized stuff before calling any GTK/GDK/Glib functions.
>   

The problem seems to me to be that loading a file from a bundle is not
the same as loading a file from the filesystem. So I'm concerned that
I'm going to have to cook up a whole lot of platform-specific
file-loading stuff, both in my Python layer as well as in my C code layer.

Cheers
JP



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]