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

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

  1. AppleMacFinder
    Expand Collapse
    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. ccamelot
    Expand Collapse
    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