How to build a Mac OS X Installer Package from these files?

Discussion in 'Mac Programming' started by AppleMacFinder, Nov 18, 2012.

  1. macrumors 6502a


    Dec 7, 2009
    Already tried many ways: pkgbuild, productbuild, PackageMaker, Packages application...

    The structure of the flat package that I want to build:

    [COLOR="Green"]Distribution[/COLOR] - xml script
    [COLOR="Red"]MacBookPro2011EFIUpdate.pkg[/COLOR] - flat package
    [COLOR="Blue"]Resources[/COLOR] - resources folder, contains language localizations
    Flat package information:
    [COLOR="DarkOrchid"]id[/COLOR]="" [COLOR="DarkOrchid"]version[/COLOR]=""
    For example, my failure with productbuild:

    productbuild error: Cannot copy package "MacBookPro2011EFIUpdate.pkg" into product
    (Bundle-style package "MacBookPro2011EFIUpdate.pkg" is not supported.)
    Please, try to build the installer package from these files: Link
    And, if you succeed, please tell how you did that!
  2. macrumors member


    Feb 21, 2010
    Swinoujscie, Poland
    Here it is


    instead of bundled package, you need a flat package with your component in it. Just put this .scap file in some folder (say "Parts" folder) then turn it into flat PKG file using command:
    pkgbuild --root ./Parts --identifier com.whatever.something --install-location /System/Library/CoreServices/Firmware\ Updates/MacBookProEFIUpdate-2.7/ MacBookPro2011EFIUpdate.pkg
    This will produce flat PKG file you'll need for the next command:
    productbuild --distribution Distribution --resources Resources Installer.pkg
    This command should package all elements into new, flat PKG file named "Installer.pkg". "Distribution" is of course a name of your file with settings for the installer and "Resources" is a directory with your resources.
    At the end you can sign it with your Developer ID Installer, using productsign command and you're set!
    Hope it helps!

Share This Page