Lingonを使って、起動しているアプリケーションのリストが保存されているファイル (/Users/username/Library/Preferences/ByHost/com.apple.loginwindow.xxx.plist) を削除する設定を作成し、起動時に実行するようにした
LaunchAgentsだと実行タイミングが遅く間に合わず、LaunchDaemonsにスクリプトを入れれば間に合うものの起動時にしか動作せずログアウト&ログインでは動作しないという問題があったのですが、LoginHook (or LoginHook) というパラメータを使うと希望通りに動作するようです。
ログイン時にスクリプトを実行したければ
sudo defaults write com.apple.loginwindow LoginHook /path/to/script.sh
ログアウト時にスクリプトを実行したければ
sudo defaults write com.apple.loginwindow LogoutHook /path/to/script.sh
といった具合。
というのを、下記のサイトで教えてもらっていた(というか勝手に読んだ)のですが自分一人で満足してフィードバックするの忘れてました (^^;
OS X 10.7 Lion の再起動やログアウトで「再ログイン時にウィンドウを再度開く」を常に無効にする方法 | Macとかの雑記帳
忘れていたというのを、こちらを読んで思い出したので一応書いておきます。
「再ログイン時にウィンドウを再度開く」にチェックが入っていても無効にする方法 | Macの手書き説明書
どっちも結局はやっていることは同じなのですが、後者の方が一見実行するコマンドが少ないので導入しやすく見えても不明瞭なサイトからファイルをダウンロードするのでセキュリティ的に不安を感じます。導入するなら多少面倒でも前者の方がいいかな・・・と思います。