Home > DeployStudio, Mac administration, Mac OS X, Packaging, Scripting > Repackaging iLife 11 for DeployStudio

Repackaging iLife 11 for DeployStudio

iLife 11 can be difficult to repackage for use with DeployStudio. There is a great article available here on the OS X Deployment and Management Wiki for how to do this, but you can also use the methodology referenced in this post to repackage iLife 11 for installation by DeployStudio. See below the jump for the procedure.

Update – 3-24-2012: If you are reading this after Friday, March 23 2012, make sure to remove iLife 11’s package signing using Greg Neagle’s flatpkgfixer script prior to using the repackaging procedure below.


You’ll need to have the iLife 11 Install DVD or a disk image of that DVD.

Iceberg 1.2.9

Set up a new Iceberg project. Since we’ll need to run this installer with root privileges, I recommend setting the project type to Darwin: Package. That will open the project with the installation privileges automatically set to root. In this case, I’m naming the project iLife 11 Installer.


Open your iLife 11 install disk, then control-click on Install iLife and select Show Original.

Screen Shot 2011-08-07 at 9.47.49 AM

A new Packages window will open.

Screen Shot 2011-08-07 at 9.49.47 AM

Select all of the packages in the Packages window and drag them all into the Additional Resources section of your Iceberg project. (The order doesn’t matter.)

Screen Shot 2011-08-07 at 9.55.35 AM

The last piece is telling the installers to run. For this, you’ll need a postflight script. Here’s the one I’m using:


sudo installer -dumplog -verbose -pkg "$1/Contents/Resources/iLife.pkg" -target /


Once you’ve got the postflight script built, run the following command to make the script executable:

sudo chmod a+x /path/to/postflight

Last step, go ahead and build the package.

Once the package has been built, test it by taking it to a test machine that doesn’t have iLife 11 and install it. You’ll need to run Software Update a couple of times to get all of the iLife applications fully updated, but then it should be ready to go.

Note: When deploying an iLife installer package built using this method with DeployStudio, make sure to set it as a postponed install.

  1. Kostas Backas
    August 10, 2011 at 11:25 pm

    Are you sure that order does not matter? Future updates will run fine?

    • August 10, 2011 at 11:30 pm

      The order doesn’t matter because the postflight tells iLife.pkg to run. iLife.pkg handles the actual installation and installs the separate iLife packages in the order that they should be installed.

  2. August 16, 2011 at 8:56 pm

    The $3 variable is the installer target passed to the script, so re-passing the target in the post flight script might be a cleaner way to go — it also works in DS as a non-postponed install.

    installer -dumplog -verbose -pkg “$1/Contents/Resources/iLife.pkg” -target “$3”

    • Kostas
      September 8, 2011 at 2:15 pm

      I just tried it using Rich’s script in DS 129 with a modular 10.6 image. I had a message that Lion DS does not support live installations, but far from that it worked OK.

      I will the other script that Matt suggests.

      Can I use the package produced to install it in modular systems using the installer command, in order to update these systems and use these OS+iLife images with DS?

      Thank you all!


  3. Chris
    September 13, 2011 at 7:21 pm

    that script does not work

    • September 13, 2011 at 7:36 pm

      Which script? The one in the post, or the one posted by Matt H?

  4. Kim
    October 31, 2011 at 3:24 pm

    How do i make that script run. This guide starts out good, but at the end its not so detailed. Or any screenshots that could help me understand. I am lost once i get to the post flight thing. then i have no clue of what to do next or even how to run the script.

  5. Kim
    November 1, 2011 at 8:42 am

    I tried following every steps. But i Can’t make it through. The link you gave me does not explain how to make the preflight script? Do I Use text edit? Or what do I use?
    Does anyone have this precompiled so i can just get it? 🙂 Pretty please.

  6. May 22, 2012 at 2:17 am

    As another option to running the flatpkgfixer you can just add the -allowUntrusted switch to your installer call before -target

  7. May 22, 2012 at 2:18 am

    I find it easier to add -allowUntrusted to your installer call before -target instead of running flatpkgfixer

  1. No trackbacks yet.

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Google+ photo

You are commenting using your Google+ account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )


Connecting to %s

%d bloggers like this: