Building Mac OS X .dmg packages
Hi,
I'm Arjan Molenaar, maintainer of the Gaphor (http://gaphor.sourceforge.net), a GTK+ based UML modeling tool.
I'm getting several requests for an easy to install package (.dmg) for OS X.
Since Inkscpae is also a pure GTK+ based application having a OSX package, I was wondering if one could tell me how to build such a package. I have an iBook at my disposal and have Gaphor up and running on OSX.
Could you give me some pointers/examples/whatever on how to create a nice packages application for Gaphor?
Thanks in advance,
Regards,
Arjan Molenaar
On 18/05/06, Arjan Molenaar <a.molenaar@...1287...> wrote:
Hi,
I'm Arjan Molenaar, maintainer of the Gaphor (http://gaphor.sourceforge.net), a GTK+ based UML modeling tool.
I'm getting several requests for an easy to install package (.dmg) for OS X.
Are you asking for help with packaging Inkscape? Or a .dmg for Inkscape? Or some sort of template for packaging your own product?
I agree that the packaging script for Inkscape is not easy to understand, and I will be submitting some improvements over the next couple of months. You should be able to download a recent version of Inkscape from this site (the very latest is Tiger only, but this is not intended to be a permanent state of affairs).
I have looked at Gaphor in the past, wanting a Mac OS X UML tool, but I don't seem to have a copy at the moment. I'll wander over and take a closer look at your project.
There is a Compiling for Mac OS X page on our Wiki which has a section on packaging, and some links. This page also needs a certain amount of work, but you may find the links helpful. Also, it seems possible to me that the GIMP Shop folk have a better package than we do, and you might want to study their methods.
Ben
Ben Fowler <ben.the.mole@...400...> wrote:
On 18/05/06, Arjan Molenaar <a.molenaar@...1287...> wrote:
Hi,
I'm Arjan Molenaar, maintainer of the Gaphor (http://gaphor.sourceforge.net), a GTK+ based UML modeling tool.
I'm getting several requests for an easy to install package (.dmg) for OS X.
Are you asking for help with packaging Inkscape? Or a .dmg for Inkscape? Or some sort of template for packaging your own product?
Oh, I'm sorry. I ment a template for packaging my own product.
I agree that the packaging script for Inkscape is not easy to understand, and I will be submitting some improvements over the next couple of months. You should be able to download a recent version of Inkscape from this site (the very latest is Tiger only, but this is not intended to be a permanent state of affairs).
I have looked at Gaphor in the past, wanting a Mac OS X UML tool, but I don't seem to have a copy at the moment. I'll wander over and take a closer look at your project.
There is a Compiling for Mac OS X page on our Wiki which has a section on packaging, and some links. This page also needs a certain amount of work, but you may find the links helpful. Also, it seems possible to me that the GIMP Shop folk have a better package than we do, and you might want to study their methods.
I'll give it a try with the Wiki documents (although I only use Darwinports and not Fink I think that's no problem).
Thanks so far.
Regards,
Arjan
Ben
On 18/05/06, Arjan Molenaar <a.molenaar@...1287...> wrote:
Ben Fowler <ben.the.mole@...400...> wrote:
On 18/05/06, Arjan Molenaar <a.molenaar@...1287...> wrote: There is a Compiling for Mac OS X page on our Wiki which has a section on packaging, and some links. This page also needs a certain amount of work, but you may find the links helpful. Also, it seems possible to me that the GIMP Shop folk have a better package than we do, and you might want to study their methods.
I'll give it a try with the Wiki documents (although I only use Darwinports and not Fink I think that's no problem).
Inkscape (and also Xara LX) use quite recent versions of some libraries, and you may find Darwinports more to your taste. It is a good job that we have several projects in any given area, not just one.
I'm struggling with pygtk at the moment, but I will get back to you.
Ben
On Thu, 18 May 2006, Arjan Molenaar wrote:
I'm Arjan Molenaar, maintainer of the Gaphor (http://gaphor.sourceforge.net), a GTK+ based UML modeling tool.
I'm getting several requests for an easy to install package (.dmg) for OS X.
Since Inkscpae is also a pure GTK+ based application having a OSX package, I was wondering if one could tell me how to build such a package. I have an iBook at my disposal and have Gaphor up and running on OSX.
Hi Arjan,
I've been the main person working on the OS X app build system, with help from several others...
The Inkscape.app OS X package uses some modified code from the Gimp.app project (http://gimp-app.sourceforge.net/) which in turn uses a modified version of some code from the Platypus project (http://sveinbjorn.sytes.net/platypus), which is code for launching command line apps as a application in OS X (so you can drop files on the dock icon to open them for example).
The other key thing is we recursively suck in all the dylibs from fink (though that could be darwin ports) by looking at the output of "otool -L". This allows us to put all the libraries into the app bundle so the end user doesn't need to have the relevant libraries included.
The basic process is similar to that described in the Gimp.app documentation: http://gimp-app.sourceforge.net/gimp.app.howto.txt
The relevant files are (in our SVN repository):
packaging/osx-app.sh A script that can be used to build the app bundle, given a compiled Inkscape workspace.
packaging/macosx/ScriptExec/ Contains our modified version of the launcher. Does things like check X11 is installed, make sure the fontcache is up to date, launch X11 before launching Inkscape. This is an Xcods project, though the script builds it using the command line.
packaging/macosx/Resources/ This contains the app bundle skeleton to which we add the actual executable, all the dylibs, and other GTK dependencies using the osx-app.sh script. The most interesting files are: packaging/macosx/Resources/script and packaging/macosx/Resources/bin/inkscape (both shell scripts) It also contains information for OSX like the filetypes associated with OS X
Please feel free to send me questions about the process or anything you don't understand (probably off-list, and I will update the documentation to reflect any clarification you require).
Cheers, Michael
participants (3)
-
Arjan Molenaar
-
Ben Fowler
-
Michael Wybrow