Developers
Please Help!
The good news is that Gtk-OSX is getting a lot of attention. The not-so-good news is that both Gtk-OSX and the Gtk-Quartz/Pango/Cairo backend are very much works in progress.
If you can, please do help, either by taking on a missing feature or just by joining the relevant mailing lists and pastering the core developers to pay attention to getting Gtk+ to work properly with Quartz.
There are a bunch of issues for the backend libraries. Contributing to these requires that one submit patches to the relevant projects on their bugzilla trackers (most of them are hosted at http://bugzilla.gnome.org, though Cairo's is at http://bugs.freedesktop.org.
Gtk-Quartz/Cairo/Pango Issues
See the ToDo page for a list. If you decide to work on one of these projects, be sure to join the developers mailing list and lobby hard for them to apply your patches!
Gtk-OSX Developer Information
This project uses git for version control. The git repositories here on SourceForge may be populated, but are unlikely to be current because we use github.com for keeping the public versions of various developers repositories. Github's ability to provide a separate repository per user (and no requirement to "join" the project since Github doesn't have projects to join) allows tremendous flexibility without making a lot of unnecessary work for the project admin.
The "official" repositories (the ones you should fork or clone if you're working by yourself) are:
- Build system and modules
- GTK Framework modules
- Ige-mac-bundler
- Ige-mac-integration
- Gtk-quartz-engine
Using git is beyond the scope of this wiki; there is plenty of excellent documentation at Gnome Live, GitHub, and Git's Home.
The easiest way to contribute is to add modulesets to ContributedModulesets.
Other things that need doing are listed on the ToDo page.
If you're going to work on something there, add a note by the item so that others know what you're doing and don't work on the same thing in isolation. Then sign up on GitHub, fork the appropriate repository, and get to work.
If you want to work on code or on the supplied modulesets, the best way is to create a github id and fork the repository you want to work on (there's a button for forking on the parent repository when you're logged in). Then you can clone your forked repository onto your computer and do what needs to be done. When you have everything working and documented, push your changes back to your github repository and push the "pull request" button. The owner of the parent repository can review your changes and merge them into his when he's satisfied with them.
We have a separate mailing list for coordination between developers (subscribe here).