問題タブ [pkgbuild]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
0 に答える
241 参照

javascript - pkgbuild/productbuild でビルドされた OS X インストーラのインストール パスを変更するにはどうすればよいですか?

カスタム フォルダーにインストールするアプリケーションがあり、アプリケーション拡張機能 (プラグイン) のインストーラーを作成する必要があります。
ホスト アプリケーションのインストーラーはクロスプラットフォーム ツールで作成されており、ユーザーはインストール フォルダーを選択でき、同じシステムに複数のバージョンをインストールすることもできます。
ホスト アプリケーションは、多くの Mac プログラムの場合のように単なる「アプリ」ではなく、いくつかのファイルと「アプリ」を含むディレクトリです。

プラグイン インストーラーは次のようにする必要があります
。 1. pkgbuild/productbuild ベースにする必要があります。クロスプラットフォーム インストーラーは Java ベースであり、問​​題があったため使用したくないからです
2. インストールされているすべてのホスト アプリケーションを CFBundleIdentifier でクエリし、インストールするものを選択します
3.ペイロードのコンテンツを、選択したホスト アプリケーションのディレクトリにインストールします

。最初の 2 つの要件の解決策を見つけることができましたが、3 つ目の要件に進む方法がわかりません。
Distribution.xml からインストール パスを変更する解決策はありますか?
choice.customLocation 属性で遊んでみましたが、JavaScript から変更することができませんでした。

それに対する「エレガントな」解決策はありますか?
ありがとう。

0 投票する
1 に答える
930 参照

macos - コンポーネント追加時の pkgbuild エラー

現在の作業ディレクトリ (CWD) 内に次のディレクトリ構造があります。

  • MyAppBundle/MyApp.app

  • MyAppBundle.plist

MyAppBundle.plist には以下が含まれます。

CWD から次のコマンドを実行すると:

...次の出力が得られます。

0 投票する
0 に答える
827 参照

python - .pkg ファイルを変更するための Python

私のpythonコードは、.pkgファイルを解凍し、そこでいくつかのファイルを変更して、再度パックする必要があります。提案する成熟したpythonモジュールはありますか?最初に xar をマシンにインストールする必要がある pyxar (xarfile) があることを確認しました。

他に選択できるオプションはありますか?

最後に、Python から xar を直接呼び出すことにしました。これは実際に機能する可能性があります。しかし、別の問題は、パッケージ内のペイロード.kg の下のスクリプトが展開されていないことです。ディレクトリであると想定されますが、ファイルとして残ります。奇妙なことに、ファイル Scripts はgzip compressed data, from Unix. しかし、MacでもLinuxでも、gzipを使用して開くことはできません。Mac では tar -xf で開くことができますが、Linux ではできません。なにか提案を?

ありがとう!

0 投票する
0 に答える
428 参照

macos - OSX でデーモンのパッケージ インストーラーを作成する

Linux から OSX へのデーモンの移植に取り組んでいます。デーモン自体は C# で記述され、Mono で実行されます。ディレクトリ「/Library/MyAppSuite/MyDaemon」にインストールされ、通常の bin、lib などのディレクトリを含むデーモンのインストーラー パッケージを作成しようとしています。次にシンボリックリンクが /Library/LaunchDaemons にインストールされ、起動時に起動します。pkgbuild ステップ中:

「有効なバンドルではありません」というエラーが表示されます。

パッケージが正しいディレクトリにインストールされ、postinstall スクリプトが実行されるように、パッケージを作成するにはどうすればよいですか? インストール ウィザード (インストール場所を変更できない) があると便利です。

0 投票する
1 に答える
3759 参照

linux - Linux で OSX .pkg ファイルをビルドする

ubuntuで.pkgファイルをビルドするための実用的なオプションは何ですか? xar を試していたのですが、結果の .pkg ファイルを mac にインストールできませんでした。'com.apple.installer.pagecontroller error -1' が発生しました。そして、munkipkg を使用しようとしていましたがpkgbuild、OS X に依存しています。それは可能ですか? Linuxでpkgbuildを使用するには? または誰かがこれを行うための最良の方法を提案できますか?

ありがとう!

0 投票する
1 に答える
444 参照

macos - pkgbuild と移動したアプリケーション

OS X で pkgbuild および productbuild ツールを使用してアプリケーション インストーラーを作成します。作成したパッケージは、アプリケーションを /Application フォルダーにインストールします。ここで、このアプリケーションを NSFileManager (別のアプリを使用) を使用して別の場所に移動すると、パッケージは新しい場所に再インストールされますが、インストールする予定の /Application に移動します。

これは何らかのファイル パス キャッシュのように見えますが、どうにかして "キャッシュをフラッシュ" して、pkg がアプリを正しい場所にインストールすることはできますか?

これは、Mavericks と El Capitan で気付きました。これはヨセミテにも当てはまると思います。