インストール時に次の 2 つのことを行う Mac OS X インストーラーを作成しようとしています (PackageMaker と Packages の両方を試しました)。
- 特定のアプリケーションがインストールされているかどうかを確認し (アプリケーション ディレクトリのフォルダー構造を調べて)、それに応じてコンポーネントの選択を設定します。
- 1 で見つかったフォルダーに従って、パッケージの宛先フォルダーを設定します。これは、アプリケーション フォルダーのサブディレクトリに移動する必要があるプラグイン用です。
前者は比較的単純に思えます。各パッケージに関連付けられた選択肢の要件としてスクリプトを追加するだけで、結果によってコンポーネントのチェックボックスの状態を制御できます。
後者はややこしく感じます。最初のステップからアプリケーションの場所を把握する方法は既に知っていますが、パッケージに設定されている宛先フォルダーを変更する方法はまったくわかりません。どうにかしてプリフライト スクリプトからインストーラー変数にアクセスできますか?
私が現在持っている唯一のアイデアは、一時ディレクトリにインストールしてから、フライト後のスクリプトに移動することですが、それは本当にエラーが発生しやすく、扱いにくいようです。また、これにより、インストール パスを編集可能にする可能性が排除されます (ユーザーがプラグインするソフトウェアの複数のインスタンスをインストールしており、間違ったものを選択した場合)。