How to create automatic launchd job that sets the Ruby version to use
This is untested (as I don’t use rvm), but there should be two simple ways to fix this.


Source rvm in your script (which you likely do anyway in your .profile, or .bashrc, or equivalent):

#!/bin/bash
[[ -s "${HOME}/.rvm/scripts/rvm" ]] &amp;&amp; source "${HOME}/.rvm/scripts/rvm"
rvm use system
/Users/jonathan/Library/Scripts/slogger/slogger


That new line is a shorter way of saying

if [[ -s "${HOME}/.rvm/scripts/rvm" ]]; then
  source "${HOME}/.rvm/scripts/rvm"
fi


-s is used to return “True if FILE exists and has a size greater than zero”.
And you’ll probably laugh as to how easy it was to fix, simply do what the message says and use /bin/bash --login, like so:

#!/bin/bash --login
rvm use system
/Users/jonathan/Library/Scripts/slogger/slogger