web-dev-qa-db-ja.com

Mac OSアプリケーションをインストール用にパッケージ化するにはどうすればよいですか?

Windowsにはインストーラーを作成するために使用できるインストーラーツールがたくさんありますが、Mac OSではアプリをインストールする2つの方法を見てきました。

  1. ダウンロードしてダブルクリックし、内部でアプリケーションを実行するDMGファイル-アプリケーションは通常、アイコンを別のアイコン(アプリケーションフォルダーを表す)にドラッグして、アプリケーションをインストールします

  2. 明らかに標準のインストーラーを起動する別の種類のファイルで、「このインストーラーはプログラムを実行してインストールを続行できるかどうかを判断することがあります」などの警告を表示することがあります。

Mac OSにインストールするアプリをパッケージ化する「標準的な」方法は何ですか?上記のいずれかがアップル推奨の方法ですか?

ありがとう。

32
Colen

Appleは、App Storeからプログラムをダウンロードする「標準」を非常に明確に作成しています。これには、アプリケーションのインストールを通常のユーザーに意識させないという利点があります。そして、信じられないかもしれませんが、普通の人はプログラムをインストールするという概念に多くの問題を抱えています。もちろん、その利点にはいくらかの費用が伴いますが、これはその議論の場所ではありません。他にもたくさんの場所があります。

App Storeに行きたくない、または行けないと仮定すると、PKGとDMGはどちらもプログラムを配布する一般的な方法です。アプリケーションバンドルとは別にファイルをインストールする必要がある場合は、PKGを使用します(これは一般的な使用例ではありません)。それ以外の場合はすべて、DMGを使用して、アプリケーションをアプリケーションフォルダーにコピーするようユーザーに求めます。しかし、多くのユーザーは、それを行う必要があることを理解していません(対象読者が知識のあるコンピューターユーザーのみである場合を除く)。ディスクイメージからアプリケーションを実行します。この場合、理想的には、プログラムがディスクイメージから実行されていることを検出し、アプリケーションフォルダーに自分自身をコピーすることを提案します。

18
SSteve

Packagesはうまく機能します。展開プロセスをシンプルに保つ必要がある場合、それは素晴らしいことです。

Quick buildは、.appPackageに追加して完了です。

高度なパッケージングの場合、証明書も提供できます。

http://s.sudre.free.fr/Software/Packages/about.html

12
roland

私たちは2つのことを議論しています:

  • 最初に、そして最も重要なことは、システムによってアクセス可能で適切に登録される方法で実行可能ファイルのビットをディスクに配置する標準的な方法です
  • 第二に、Appleが推奨する.appを準備するメカニズム

Appleのサイト の古いマーケティングページでは、PackageMakerアプリケーションを使用してパッケージを作成することを推奨しています(インストーラーアプリケーションがビットを所定の位置に移動できるようにするため)。その使用法については、mactech.com/articles/mactech/Vol.25/25.03/2503MacEnterprise-PackagingforSystemAdministrators/index.htmlで説明しています。

しかし、他の人が言及したように、部屋の象はMacAppStore(略してMAS)です。デビューするまで、大企業の標準だったのは、独自のカスタムスクリプトを古いスタイルの「バンドル」パッケージにロールインするか、VISEインストーラーなどの実行可能ファイルを使用することでした。小規模な開発者は、通常、ドラッグアンドドロップでアプリをインストール可能にし、Zipアーカイブまたはディスクイメージで配布しようとしました(簡単にするため)。 MASは異なります:10.7では、フラットパッケージ(実際にはxarアーカイブ、説明 ここ )と呼ばれるパッケージ形式(10.5でデビュー)を使用します。これは、http経由で非表示フォルダーに転送されます、アプリケーションに直接インストールします(その後、ダウンロード先の一時フォルダーは削除されます)。領収書と請求書または材料ファイルを/ private/var/dbにドロップするため、組み込みのコマンドラインpkgutilツール(ここで説明するmactech.com/articles/mactech/Vol.25/25.12)によって監査可能です。 /2512MacEnterprise-PackagesReceiptsandSnow/index.html

フラットパッケージ形式を使用する利点は、ネットワークを介してより安全かつ効率的に物事を引き出すことができることですが、定期的にパッケージをテストおよび変更するか、スクリプトを確認するために反復する場合、バンドルパッケージほど簡単に操作できませんアクションの実行またはチェックがうまく機能する。フラットの場合でも、柔軟性のためにアーカイブまたはディスクイメージにpkgを置くことをお勧めします。多くの配布ツールがZipよりもDMGを想定しているため、それもあります。

何がAppleが推奨し、何が標準的な、一般的な慣行であるかということに加えて、この記事があります: https://www.afp548.com/2010/06/03/the-commandments-of -packaging-in-os-x / これは、より広範な配布のためのパッケージングの理由と方法(主にシステム管理者向け)について説明しています。物事がうまくいかない方法と理由をもっと理解することを強くお勧めします。避けるべきもの。

8
Sacrilicious

アイスバーグ !もう1つのパッケージ作成者。

6
Semyon Vyskubov

OS Xでは、多くのアプリケーションは、ユーザーが/ Applicationフォルダー(またはその他の場所)にコピーする必要がある再配置可能アプリケーションバンドルとして作成されます。他の場合では、マシン上でいくつかの操作(ユーザーの追加や権限の変更など)を実行する必要がある場合、PKGインストーラー(たとえば、 PackageMaker を使用してビルド)を使用できます。インストールスクリプトをインストールし、インストールドライブの選択など、いくつかの基本的なインストール構成をサポートします。

複雑なサーバーソフトウェアの場合と同様に、たとえば、MySQLポートとパスワード、または要件をオンザフライでダウンロードするためのプロキシ情報など、アプリケーションをインストールするために必要な情報を要求するカスタムページをエンドユーザーに表示するなど、より柔軟性が必要な場合がありますおしゃれに見せてください:))。この場合、 BitRock InstallBuilder (免責事項、私は開発者の1人)のような他のインストーラーソリューションがあります。 InstallBuilderには、プラットフォームごとのカスタマイズがほとんどない同じプロジェクトを使用してマルチプラットフォームインストーラーを生成できるという利点もあります。

3
ryotakatsuki