I've got a development box that I use for a bunch of other purposes(mostly music), and I was wondering if there was a way to configure launchd to only start up postgres when it's needed. SSH does the same thing so I've tried to fashion a plist for this purpose modeled after that(on my box it's located at /System/Library/LaunchDaemons/ssh.plist) but something is wrong. PGAdmin 3 errors out when I try to connect.
Below is my nonworking plist. Does anyone have any suggestions on what I'm doing wrong?
thanks
Mike Kohout
Fender-2:LaunchDaemons development$ cat ondemand.postgres8.4.plist <?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>Label</key>
<string>ondemand.postgres8.4</string>
<key>UserName</key>
<string>development</string>
<key>KeepAlive</key>
<false/>
<key>ProgramArguments</key>
<array>
<string>/Users/development/Applications/postgres-8.4.1/bin/pg_ctl</string>
<string>start</string>
<string>-D</string>
<string>/Users/development/Documents/postgres_data</string>
</array>
<key>ServiceDescription</key>
<string>Postgresql Server</string>
<key>Sockets</key>
<dict>
<key>Listeners</key>
<dict>
<key>SockServiceName</key>
<string>postgresql</string>
</dict>
</dict>
<key>inetdCompatibility</key>
<dict><key>Wait</key><true/></dict>
</dict>
</plist>