Email: Takayama Fumihiko <tekezo@pqrs.org>

[Mac OS X] シェルスクリプトとかの CUI アプリケーションを Mac OS X 方式の .app にする方法 [簡単 5 ステップ]

[Mac OS X] シェルスクリプトとかの CUI アプリケーションを Mac OS X 方式の .app にする方法 [簡単 5 ステップ]

シンプルで高性能な Mac OS X 用の sshfs 実装の sshfs for Darwin の 2.5.0 をリリースしました。

で、今回 mount/umount を Terminal.app からではなくて Finder から出来るような形にしたのでその方法。

サンプルファイル

サンプルで Firefox の ProfileManager を開くアプリケーションを作ってみます。

完成品はコチラ FirefoxProfileManager.app.zip

[ Step1 ] アイコンを作る

128x128 でアイコンを作ります。形式は tiff で。

logo.png

これを tiff2icns でアイコンファイルに変換します。

% tiff2icns icon.tiff icon.icns

[ Step2 ] コマンドを用意する

Firefox の ProfileManager を開くコマンドを用意します。 以下の内容のファイルを core.sh として保存します。

#!/bin/sh

/Applications/Firefox.app/Contents/MacOS/firefox -ProfileManager &
exit 0

core.sh に実行属性を付けるのを忘れないように!!

% chmod 755 core.sh

[ Step3 ] Contents ディレクトリを作ってファイルを格納する

アイコンやコマンドを格納する Contents ディレクトリを作成します。 Contents の下には MacOS と Resources ディレクトリを作ります。

% mkdir Contents
% mkdir Contents/MacOS
% mkdir Contents/Resources

そうしたら MacOS の下にコマンド (core.sh) を、 Resources の下にアイコンを置きます。

% find Contents
Contents
Contents/MacOS
Contents/MacOS/core.sh
Contents/Resources
Contents/Resources/icon.icns

繰り返しになりますが core.sh に実行属性を忘れないようにしましょう。

% chmod 755 Contents/MacOS/core.sh

[ Step4 ] Info.plist を置く

Contents ディレクトリの直下に Info.plist というファイルを置きます。

Contents
Contents/Info.plist
Contents/MacOS
Contents/MacOS/core.sh
Contents/Resources
Contents/Resources/icon.icns

[ Step5 ] Contents ディレクトリを .app に格納する

最後に Contents ディレクトリを .app に格納します。

% mkdir FirefoxProfileManager.app
% mv Contents FirefoxProfileManager.app

ちなみに Finder で見たときアイコンがデフォルトのものになっていた場合は、一度再起動すれば直ります。

[ まとめ ]

このサンプルを落として、 core.sh と icon.icon を差し替えれば OK。

FirefoxProfileManager.app.zip


Comments for This Page.
Date: 2007-07-14 04:34 (JST)