問題タブ [productbuild]
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.
macos - UnityOSXスタンドアロンプレーヤーがローカルデータを保存しない
Unity 3.5を使用して、アプリケーション用のスタンドアロンOSXプレーヤーを作成しようとしています。productbuildを使用してそれからpkgを作成するまで、すべてが非常にうまくいきます。
私のproductbuild行の構文は次のとおりです。
productbuild --component ProjectName.app "/Applications" --sign "$signingid" ProjectName.pkg
これは最初は機能しているようで、スーパーユーザーに許可を求めた後、アプリケーションを正しくインストールするように見えるpkgファイルを生成しますが、インストールしたアプリケーションを実行すると、保存データが保持されていないことがわかりました。Application.datapath
明らかに、この場合は「/Applications/ProjectName.app/Contents/」に設定されており、誰でも書き込み可能ではありません。
私が見る限り、2つの可能な解決策があります。1つは、アプリケーションの開始時に書き込み可能でApplication.datapath
あることを確認する方法を見つけることです。しかし、私はこれについてどうやって行くのかわかりません。私が見ることができる他の唯一の解決策は、アプリケーションに必要なすべての変更を加えて、Application.datapath
書き込み可能であると見なされないようにすることです。永続データを保存するために別の場所を確立する必要があります。この後者のアプローチを採用する場合、Unityがそのようなデータを保存できるディレクトリを取得する機能を提供しているかどうかも知る必要があります。これは、現在1つを知らないためです。
上で概説した2つ以外のアプローチがある場合、私は間違いなく代替案を受け入れますが、誰かが私が上記のいずれかを達成するために知る必要があることを通り抜けるのを手伝ってくれるなら、私はその面で同様に感謝します同じように。
誰もが提供できる支援を事前に感謝します。
macos - インストールパッケージを構築するMacでpkgbuildとproductbuildを使用して飛行後のスクリプトを実行する方法
4つのサブパッケージを含むMacOSX用のインストールパッケージをビルドしたいと思います。サブパッケージはpkgbuildでビルドされます。最終的なパッケージは、ウェルカムテキストとライセンステキストおよびインストール場所の選択のためにDistribution.xmlを使用してproductbuildでビルドされます。
インストールが成功した後、スクリプトを実行したいと思います。特に、すべてのパッケージの領収書がインストーラーによって書き込まれた後。
マニュアルページやドキュメント、その他の役立つリンクを理解している限り、そのために飛行後のスクリプトを使用する必要があります。残念ながら、動作させることができません。postflightという名前を付け、-scriptオプションを使用してpkgbuildでサブパッケージに追加しましたが、pkgbuildはpostflightスクリプトをサポートしていないようです。インストール後に名前を付けると実行されますが、残念ながら領収書が書き込まれる前に実行されます。
pkgutilツールを使用して、他のパッケージのインストール場所の場所で構成されるXCode用のxcconfigファイルを作成したいので、レシートが書き込まれた後に実行する必要があります。
Scripts /フォルダーを展開されたパッケージに追加してexpand-flattenハックを使用しようとしましたが、フラット化した後は無視されるようです。
私のニーズを達成する方法はありますか?(パッケージの選択したインストール場所をサブパッケージのインストール場所のファイルに書き込む)
可能であれば、少なくとも別のより良い方法がある場合は、廃止されたパッケージメーカーツールの使用を避けたいと思います。
前もって感謝します
macos - イメージを含む Readme ファイルを含む Mac OS インストーラー パッケージ
パッケージの Distribution.xml 部分にタグを設定<readme>
して、画像を含む可能性のあるものを含めようとしています。今のところ、私はrtfdとpdfを試しました。rtfdの場合、アクセス許可がないためにファイルを開くことができず、pdfがプレーン テキストとして表示されると説明されています。問題は、Distribution.xml で画像を含む可能性のあるものを使用する方法です。
xcode - pkgbuild / productbuild から "defaults write" を正しく使用するにはどうすればよいですか?
私はインストーラーパッケージを構築しています
また、インストール後にいくつかのユーザーのデフォルトを設定したいと思います。そこで、次のpostinstall
スクリプトを作成しました。
ただし、これは機能しません — 設定は に書き込まれ/var/root/Library/Preferences
、 からしかアクセスできませんsudo defaults read
。
だから代わりに私はこれを試しました:
適切な場所に書き込まれるようになりましたが、アクセス許可が間違っています — stat
plist ファイルのアクセス許可が-rw------- 1 root wheel
であり、defaults read
それらにアクセスできないことを示しています。これを正しく機能させるにはどうすればよいですか?
xcode - productbuild および pkgbuild によるファイル所有権の変更
Mac OS 10.8.4 で Java アプリのインストーラーを作成しようとしています。アプリは正常に動作し、zip ファイルから問題なくインストールできます。productbuild または pkgbuild を使用して .pkg インストーラーを作成できます。どちらのインストーラー .pkg ファイルも正常にインストールできますが、両方のパッケージ化プログラムがデータ ディレクトリとその下位ファイルおよびサブディレクトリの所有権をユーザーからルートに変更するため、アプリは正しく実行されません。このデータ ディレクトリを .app バンドルの Resources ディレクトリにインストールすると、プログラムの初回実行時にデータ ディレクトリが /Users/user/Library/Application Support に移動します。--ownership preserve および --ownership preserve-other オプションを pkgbuild で使用してみましたが、役に立ちませんでした。私が正しくインストールして実行できた唯一の方法は、zip ファイルを使用することです。ファイルの所有権をそのままにしておくためです。私が使用しているpkgbuildコマンドは次のとおりです。
pkgbuild --ownership preserve --component ./myApp.app ./myApp-installer.pkg
私の質問は次のとおりです。
--ownership preserve オプションを強制的に pkgbuild に適用させるにはどうすればよいですか?
ユーザー所有権を持ち、ユーザー領域向けのデータのみのパッケージを個別にビルドし、pkgbuild の --synthesize オプションを使用して実行可能パッケージとマージすることはできますか? はいの場合、誰かがそのようなデータのみのパッケージを構築する方法を教えてもらえますか?