6

pkgbuildとproductbuildを使用して製品インストーラーを正常に動作させています。ただし、現在、インストーラーをアンインストーラーとしても機能させる方法を見つけようとしています。次のように、distribution.xmlファイルを変更することで、ユーザーのアンインストールの選択肢を表示できます。

<choices-outline>
    <line choice="install"/>
    <line choice="uninstall"/>
</choices-outline>
<choice id="install" visible="true" title="Install" description="Installation description goes here">
    <pkg-ref id="com.prosc.RemoteExecution.install.pkg">#installer.pkg</pkg-ref>
</choice>
<choice id="uninstall" visible="true" title="Uninstall" description="Uninstaller description goes here" start_selected="false">
    <pkg-ref id="com.prosc.RemoteExecution.uninstall.pkg">#installer.pkg</pkg-ref>
</choice>

しかし、彼らがアンインストールを選択するとき、私は彼らがどの選択を選択したかをどういうわけか知るために私のポストインストールスクリプトが必要です。インストール後のスクリプトがこれを知る方法がわかりません。環境変数にはこれを示すものはなく、スクリプトに渡されるパラメーターにも含まれていません。

独自の個別のポストインストールスクリプトを使用して個別のアンインストールパッケージを作成し、それを製品全体のコンポーネントとして含めることができると思いましたが、それは多くの追加のセットアップ作業のように思えます。

ユーザーが行ったインストールの選択に基づいて、動作にわずかな違いがあった場合はどうなりますか?選択肢ごとに個別のパッケージコンポーネントを作成する必要がありますか?

追加のコンポーネントパッケージを必要としないこのための良い解決策はありますか、それともインストール/アンインストール用に別々のコンポーネントパッケージを作成する必要がありますか?

4

0 に答える 0