MacOS X(osx) でログイン時に fetchmail -d などをする方法

例えば自分のスプールに fetchmail -d 360 なんかして一定時間毎にメイルを取り込みたい!
そんな時普通の Unix だったら、.hogerc なんかに書いておいたりできるんだけど、
OSX の `システム環境設定' -> `アカウント' -> `ログイン項目' では、
Unix アプリケーションやシェルスクリプトが実行できない。[あわわ/]
ということで、シェルスクリプトをアプリケーションバンドルにしてしまいましょう。
上記例の fetchmail だったら、こうすればいいのだ。


  1. ・バンドル用のディレクトリを作る。


    % mkdir -p fetchmail.app/Contents/MacOS
    % mkdir fetchmail.app/Contents/Resources

  2. ・Info.plist を作る。


    % cat > fetchmail.app/Contents/Info.plist




    CFBundleExecutable
    app.sh
    CFBundleIconFile
    app.icns
    CFBundlePackageType
    APPL
    CFBundleSignature
    mtaneda


    ^D


  3. シェルスクリプトを作る。

    % cat > fetchmail.app/Contents/MacOS/app.sh
    #!/bin/sh
    /usr/bin/fetchmail -d 360
    exit 0
    ^D
    % chmod 755 fetchmail.app/Contents/MacOS/app.sh
  4. で、あとはこのfetchmail.appを起動項目に入れてあげればおkー ちなみにResourcesディレクトリにapp.icnsっていうアイコンをつくってあげればアイコンも表示されます!