web-dev-qa-db-ja.com

macOS Catalina:システムボリュームにコンテンツをインストールしようとしています

pkgbuildproductbuildを使用して作成した.pkgファイルとして配布するアプリがあります。 macOS Catalinaでは、これはもう機能しません。インストーラは、システムボリュームにコンテンツをインストールしようとしていると不平を言います。

エラーは、Javaランタイムのバンドルに関係していると考えました。Javaとは何の関係もないことが判明しました。3週間前に投稿しました。

それをテストするために、メインウィンドウとクリックするボタンを備えたHelloと呼ばれる最小のプロジェクトがあります。 XCodeでは、Product-> Archive、次にDistribute App、およびCopy Appを実行します。これにより、内容Hello 2019-12-18 15-01-07を含むディレクトリHello.appが作成されます。アプリは正常に動作します。次に、pkgbuild --root *7 Hello.pkgHello.pkgを作成します。

FinderでHello.pkgをダブルクリックすると、インストーラーに[紹介]、[宛先の選択](オプションは1つだけ提供されます)、およびインストールタイプ( "Macintosh HDへの標準インストール")の画面が表示され、パスワードを要求されます。次に、「このパッケージはこのバージョンのmacOSと互換性がありません。パッケージはシステムボリュームにコンテンツをインストールしようとしています。ソフトウェアの製造元に問い合わせてください。」

私がコード署名して公証しても、違いはありません。 Productbuildは、失敗したプロセスにレイヤーを1つだけ追加します。

何が欠けていますか?

2
Jerry Agin

私たちは同様の問題に直面していました。 pkgbuildコマンドのオプション-install-locationを使用して問題を修正できます。 -install-locationオプションを使用しない場合、pkgbuildは多くの場合、デフォルトのインストール場所として「/」を使用します。 macOS Catalinaでは、特定のフォルダーのみが書き込み可能です。詳細はこちら link を参照してください。この場合、パッケージのインストールは、/ usr/local、/ opt、/ Applicationsなどの書き込み可能なフォルダーの1つをデフォルトのインストール場所として指定した場合にのみ成功しました。

2
Anand Navale