この記事は1年以上前に書かれた記事です。情報が古い可能性がありますので、ご注意ください。 This article was written over a year ago. Please be aware that the information may be old.

最近のOS Xでのインストーラ作成

OS Xのアプリは、最近はアプリケーションフォルダにドラッグ&ドロップでコピーしてインストール完了というものが増えてきましたが、インストーラを使った方が良い場合もあります。例えば、アプリをインストールするときに、必要なOSのバージョンのチェックを行いたいときや、インストールと同時に実行しておきたい処理があるとき、READMEを表示したいとき、使用許諾契約書を表示させたいときなど、少し考えてみて、色々なことが浮かんできます。

OS Xでインストーラを作るには、長い間「Package Maker」というアプリが使われてきました。このアプリは、開発者用のSDKに入っていました。現在はこのアプリは廃止されてしまい、「productbuild」というコマンドラインから実行するプログラムを使うように変更になっています。

Xcode 4.6のリリースノートにも書かれています。

詳しい使い方は、man productbuildで参照するようになっていますが、これを読んでみても少しわかりにくいですね。整理してみると、次のような使い方が良いようです。

productbuildコマンドに「–synthesize」オプションを指定して、インストーラの設定を行うXMLのひな形を出力する(最低限の設定が書かれたファイルが出力される)
出力されたファイルをベースに必要な設定を追加する。このXMLファイルの構文については「Distribution Definition XML Schema Reference」pkgbuildを使ってproductbuildで出力するインストーラの中に含めるpkgを作成する。(pkgbuildは指定したフォルダ内のファイルを指定した場所にインストールするpkgを作れる)
productbuildでXMLとpkgbuildの出力pkgを使って最終インストーラを出力する
Gatekeeperのコードサイニングはproductbuildの「–sign」オプションを使うか、productsignコマンドを使う

決まった定型作業なので、シェルスクリプトを作っておくと便利そうです。これに加えて、必要なフォルダの作成とdmgファイルの作成も、そのスクリプト内で行えば、全自動にできるので、効率的に作業できます。

プロフィール

林 晃
アールケー開発 代表
NPO法人MOSA 理事
ソフトウェアエンジニア

2005年にアールケー開発を開業し、企業から依頼を受けて、ソフトウェアを受託開発しています。macOSやiOSのソフトウェアを専門に開発しています。ソフトウェア開発の他に、技術書執筆、セミナー講師、オンライン教育コンテンツ開発などを行っています。

詳細はこちらをご覧ください。

アールケー開発について

著書の紹介

シェアする

  • このエントリーをはてなブックマークに追加
  • Evernoteに保存Evernoteに保存

フォローする