My first ever blog post on gnome blogs, and about time. Today I ‘finished’ my earlier porting of gedit to OS X. Although we did the initial port some time ago, it was more a proof-of-concept than actually something usable. That is, I was the only one who could use it. Not any more though! I finally sat down to make it into an actual OS X App Bundle (using the excellent ige-mac-bundler). We include everything that we need in there, so it should be entirely standalone. That also means that the full thing is about 100 MB
I was pretty impressed by how well OS X is supported by gtk+ and friends already, but I did hit some snags on the way. One of them was gconf. We decided that it would be simpler for now not to involve dbus, so we went with gconf 2.22. Unfortunately, gconf has hardcoded install paths, and since we want to put everything in a single bundle, this was causing some problems. In the end I patched it to replace the compile time prefix with a prefix set as an environment variable. Other than that I had some issues with python modules installing in the wrong place, and I had to patch ige-mac-integration in some places to get a bit nicer menu integration (especially accelerators). All in all pretty smooth, but still about a days work to get it all done.
So, what do you get? If you’re the proud owner of a Mac (running OS X 10.4 intel), feel free to download the installer for gedit 2.26.2. After downloading, you should be prompted with the following:
After launching gedit, you should be prompted with something like this:
So there it is, gedit nicely running on OS X natively. It features:
- Menu integration (including appropriate shortcuts)
- Full support for plugins (both C and Python)
- Everything else you expect from gedit
Of course there are still some things to be done:
- There is no help yet (somehow, building the help eats all of my 4G of mem, crashing python for xmlpo)
- More and more integration (proxy icon, dock menu)
- Translations do not seem to be working at the moment
There is a new dmg including help, translations, better integration (proxy icon, closing/quitting) and most of the plugins in gedit-plugins.