I want to run a unison sync service running in the background whenever I login. But the status code of my agent is 78
. I don't know why, I tried some fix posted online, but it just doesn't work.
What's the problem?? below is the plist file for my service.
<?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>syncmyproject</string>
<key>StandardOutPath</key>
<string>/var/log/syncmyproject.log</string>
<key>StandardErrorPath</key>
<string>/var/log/syncmyproject.log</string>
<key>RunAtLoad</key>
<true/>
<key>KeepAlive</key>
<true/>
<key>Debug</key>
<true/>
<key>EnableGlobbing</key>
<true/>
<key>ProgramArguments</key>
<array>
<string>/usr/local/bin/unison</string>
<string>-auto</string>
<string>-batch</string>
<string>-repeat watch</string>
<string>~/home/project</string>
<string>~/project</string>
</array>
</dict>
</plist>
I read man launchctl
, find 78 means function not implemented
. It doesn't help much.
Finally I make it work, actually there were errors in the plist, I recommend to install the brew install --cask launchcontrol
, which is a gui tool for launchctl, it can help detect errors and trouble shooting.