Leopardを占う・AppleがIntelチップを採用したらどうなる?・「Automator」のたどる運命を予測AppleScriptサブルーチンインストーラパッケージを作る時がきたアプリケーションのインストーラパッケージを作る機会は少ない。一般ユーザーは当然としても、開発者にとってもそれは同じだろう。「じゃあ、明日インストーラを作ってください」と言われても困る。scriptの知識が要求されるうえに、何をやったらよいのかよく分からない。インストーラで一度泣きを見たので、それ以来、同じ失敗を繰り返さないよう、インストーラと見るやすべてパッケージの中をこじ開け、各種後処理スクリプトや前処理スクリプトを収集しまくった。Xのインストーラでは、前処理や後処理を行えるようになっている。逆をいえば、前処理や後処理がいらなければインストーラを作る必要などない。アプリケーションフォルダにアイコンをドラッグ&ドロップしさえすればいい。自分がやりたい処理をどのステージで行えばよいのか、そうしたことを知るのもノウハウであるし、他のソフトが何を行っているのかを知っておくのもノウハウである。集めたインストーラスクリプトは数十に上り、それらをつぶさに解析することで、さまざまなノウハウが存在していることを学習できた。インストール後にアイコンをDockに登録するノウハウや、インストール前にOSのバージョンやHDDの空き容量を確認するものなど、さまざまなノウハウを吸収した。Xが実行するインストーラスクリプトの名称、および実行の順番は以下のようになっている。CheckOSのバージョン確認を行う。Server)ではないか、OSのバージョンは正しいか、β版のOSにインストールしようとしていないか......などなど、確認を行う。日本語環境でしかインストールを許さないといった制限を設けることも可能なわけだ。・preflight古いバージョンのソフトウェアの削除、キャッシュの削除、初期設定の削除などを行う。ものによるが、一番泥臭い作業を行うステージであり、他の開発者がどのような点に気を付けているのか、どういう点を見られては困るのかといったことが伺えるようで、分析していて楽しいところだ。Overdriveで見かけただけで、あとはこの段階のスクリプトが用意されているを見たことはない。インストール対象のアプリケーションがヘルパー用のバックグラウンド実行アプリを伴っているような場合には、この時点でプロセスを停止させたりしているようだ。★★)・postinstall(すでにパッケージがインストールされている場合にはpostupgrade)インストールしたファイルの実行権限を書き換えたり、起動項目に追加したりする。XのインストーラはHomeディレクトリの下にファイルをインストールできないので、このステージでホーム下にファイルを移動させてもよいだろう。・postflightひたすらインストール後の後片付けステージである。OSのアップデータであれば、カーネルのキャッシュをすべて削除するとか、不要になったファイルを削除したりする。ファイルの変更日時をそろえたりもする。インストールしたファイルに対して、念のためにtouchコマンドを発行しておくか、というインストーラが非常に多い。実は、syncの代わりにtouchを実行していたりするのだろうか。Apple純正のソフトウェアが、Dockにアプリケーションのアイコンを登録するのもこのステージである。plistbuddyという支援用アプリケーションを用いて、Dockのplistに目的のアプリケーションを登録する。インストールしたアプリケーションを勝手にDockに登録するとユーザーから嫌がられる場合が多いが、自社製品ならOKというところなのだろうか。場合によっては、Dockへの登録を必須要件として仕様を出してくるクライアントもあるので、Dockへのアプリ登録は知っておいて損のないノウハウだ。