Mac OS X administrators frequently need to build installer packages to help deploy and manage software on a network of Macs. The motive for creating a package is one of
- Packaging software that does not have a dedicated installer. This applies to all the nice drag-and-drop applications like Firefox and Cyberduck.
- Packaging your own site’s software, whether that is as simple as printer descriptions or as complex as a full-blown application.
- Re-packaging some miserable piece of shit installer that either totally denies the harsh reality of Apple’s non-cross platform installer formats or which manages to make such a balls of an install package that you were better off before they bothered. Most everything by Adobe is in this category.
The first of those three is very common, and it ought to be easy to create packages for existing installed applications. Apple’s PackageMaker application provides a nice interface for creating packages, but it has two drawbacks:
- PackageMaker is not installed by default on Mac OS X (it gets intalled as part of the Developer Tools).
- Before PackageMaker 3 (part of Xcode 3, which requires Mac OS X 10.5) there was no simple method for quickly packaging an installed application.
What I want is a package creation tool that works on a 10.4 system without
requiring the developer tools and which can be scripted. The
command-line tool requires an existing
Info.plist file or
if you want to set a custom default installation directory – not the end
of the world, but tedious.
- Iceberg is an excellent graphical tool for building packages, by Stéphane Sudre who also wrote up the…
- PackageMaker how-to which is a very useful introduction to the
.pkgfiles. Bit out-of-date these days.
- Man pages for the command-line packagemaker and for the installer tools.
- Apple’s software distribution documentation, which is very
quiet on the subject of custom installer plug-ins. Xcode has a template
project for an installer plugin, and the
InstallerPlugins.frameworkheaders have lots of information.
- Installer-dev mailing list, where the people who wrote the tools and documentation help out a lot.
- JAMF Composer which is part of the Casper management tools. Version 7 is no longer free.