Hi, hope this doesn't come too late, but I was looking for the same thing and couldn't find an answer, so I figured it out looking at Apple documentation here:
http://developer.apple.com/mac/libra...ndDaemons.html.
Applying what the docs says, I came out with something like the following property list which I saved (as root and with root:wheel owner) in /Library/LaunchDaemons/calibre_server.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>calibre_server</string>
<key>OnDemand</key>
<true/>
<key>ProgramArguments</key>
<array>
<string>/usr/bin/calibre-server</string>
<string>--port=[Choose your port]</string>
<string>--timeout=[Choose your timeout]</string>
<string>--password=[Choose your password]</string>
<string>--username=[Choose your username]</string>
<string>--with-library=[Choose your path to Calibre Library]</string>
</array>
<key>WorkingDirectory</key>
<string>[Suggest to put here /Users/Your_username]</string>
</dict>
</plist>
And now I have
launchd automatically start calibre-server whenever I try to connect to it.
Hope this helps,
Andrea.