I love Quicksilver, but the latest version crashes every once in a while. It’s not so frequent as to be really annoying, but the annoying part is that to re-launch it I have to go hunting in the Applications folder, or use Spotlight, none of which is an acceptable alternative being used to Quicksilver.
It occurred to me that I could use launchd to automatically re-launch QS when it crashes. It works very nicely, here’s what I did:
- In the QS preferences, disable “start at login”
- Create a new LaunchAgent in my account by storing the following file as ~/Library/LaunchAgents/org.quicksilver.plist (actually I used Lingon to create the file – very handy utility!):
<?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd"> <plist version="1.0"> <dict> <key>KeepAlive</key> <true/> <key>Label</key> <string>org.quicksilver</string> <key>ProgramArguments</key> <array> <string>/Applications/Quicksilver.app/Contents/MacOS/Quicksilver</string> </array> </dict> </plist>
- Log out and back in – voila! QS is started automatically, and if it dies for any reason, launchd will automatically restart it.
Of course, this can be used to immortalize any program that you want to keep running all the time.