Hi,
Thanks for your quick answer.
Our project distribution file is looks like when passed on the product build command line : <installer-gui-script minSpecVersion="1.0"> <!-- Localization for the installer title --> <title>INSTALLER_TITLE</title> <!-- background image --> <background file="background.jpg" scaling="tofit" alignment="bottomleft"/> <!-- File used to fill the introduction pane --> <welcome file="Welcome.txt"/> <!-- File used to fill the license pane --> <license file="License.rtf"/> <!-- File used to fill the final pane --> <!-- <conclusion file="Conclusion.rtf"/> --> <!-- Indicates where the application can be installed --> <!-- Indicates that our software can only be installed on the running OS --> <domains enable_anywhere="false" enable_currentUserHome="false" enable_localSystem="true"/> <!-- The end-user can not select which component to install, every selection is done in this script --> <!-- Only valid on intel platforms (no ppc) --> <options customize="never" hostArchitectures="i386"/> <!-- Choices details --> <choice id="choice_componentA" start_enabled="true" start_selected="true" title="choice_componentA_title" description="choice_componentA_description"> <pkg-ref id="com.identifier.componentA"/> </choice> <choice id="choice_componentB" start_enabled="true" start_selected="true" title="choice_componentB_title" description="choice_componentB_description"> <pkg-ref id="com.identifier.componentB"/> </choice> <choice id="choice_componentC" start_enabled="true" start_selected="true" title="choice_componentC_title" description="choice_componentC_description"> <pkg-ref id="com.identifier.componentC"/> </choice>
<pkg-ref id="com.identifier.componentA">#PackageA.pkg</pkg-ref> <pkg-ref id="com.identifier.componentB">#PackageB.pkg</pkg-ref> <pkg-ref id="com.identifier.componentC">#PackageC.pkg</pkg-ref> <!-- Installation story --> <choices-outline> <line choice="choice_componentA"/> <line choice="choice_componentB"/> <line choice="choice_componentC"/> </choices-outline> <!-- Requirements that must be ok for the installer to run correctly --> <installation-check script="installationCheck()"/> <!-- Requirements that must be ok for a destination volume --> <volume-check script="volumeCheck()"/> <!-- _javascript_ used to change installer behaviour --> <script> ... </script> </installer-gui-script>
If i uncompress the created installer.mpkg using pkgutil --expand, it then looks like <?xml version="1.0" standalone="no"?> <installer-gui-script minSpecVersion="1"> <!-- Localization for the installer title --> <title>INSTALLER_TITLE</title> <!-- background image --> <background file="background.jpg" scaling="tofit" alignment="bottomleft"/> <!-- File used to fill the introduction pane --> <welcome file="Welcome.txt"/> <!-- File used to fill the license pane --> <license file="License.rtf"/> <!-- File used to fill the final pane --> <!-- <conclusion file="Conclusion.rtf"/> --> <!-- Indicates where the application can be installed --> <!-- Indicates that our software can only be installed on the running OS --> <domains enable_anywhere="false" enable_currentUserHome="false" enable_localSystem="true"/> <!-- The end-user can not select which component to install, every selection is done in this script --> <!-- Only valid on intel platforms (no ppc) --> <options customize="never" hostArchitectures="i386"/> <!-- Choices details --> <choice id="choice_componentA" start_enabled="true" start_selected="true" title="choice_componentA_title" description="choice_componentA_description"> <pkg-ref id="com.identifier.componentA"/> </choice> <choice id="choice_componentB" start_enabled="true" start_selected="true" title="choice_componentB_title" description="choice_componentB_description"> <pkg-ref id="com.identifier.componentB"/> </choice> <choice id="choice_componentC" start_enabled="true" start_selected="true" title="choice_componentC_title" description="choice_componentC_description"> <pkg-ref id="com.identifier.componentC"/> </choice> <pkg-ref id="com.identifier.componentA" version="1.0.0" installKBytes="53">#PackageA.pkg</pkg-ref> <pkg-ref id="com.identifier.componentB" version="1.0.0" installKBytes="4403">#PackageB.pkg</pkg-ref> <pkg-ref id="com.identifier.componentC" version="1.0.0" installKBytes="6390">#PackageC.pkg</pkg-ref> <!-- Installation story --> <choices-outline> <line choice="choice_componentA"/> <line choice="choice_componentB"/> <line choice="choice_componentC"/> </choices-outline> <!-- Requirements that must be ok for the installer to run correctly --> <installation-check script="installationCheck()"/> <!-- Requirements that must be ok for a destination volume --> <volume-check script="volumeCheck()"/> <!-- _javascript_ used to change installer behaviour --> <script> .... </script> <pkg-ref id="com.identifier.componentAr"> <bundle-version/> </pkg-ref> <pkg-ref id="com.identifier.componentB"> <bundle-version> <bundle CFBundleVersion="2.0.0" id="com.identifier.appB" path="Applications/AppB.app"/> </bundle-version> </pkg-ref> <pkg-ref id="com.identifier.componentC"> <bundle-version> <bundle CFBundleVersion="2.0.0" id="com.identifier.appC" path="Applications/AppB.app/Contents/MacOS/AppC.app"/> </bundle-version> </pkg-ref> <product id="com.identifier.installer" version="2.0.0"/> </installer-gui-script>
We can see the all pkg-ref structures have been detailed during the productbuild process. Even if those structures are duplicated, they keep exactly their ids. Hope this is not the cause of my problem ?
Best regards,
Tanguy RAHUEL. Le 21 août 2013 à 07:18, Stephane Sudre < email@hidden> a écrit : The first thing to do would be to look what the distribution.dist file looks like.
|