#!/usr/bin/env bash -e create_prototype_shim() { cat > .rbenv-shim <<SH #!/usr/bin/env bash -e exec rbenv exec "\${0##*/}" "\$@" SH chmod +x .rbenv-shim } make_shims() { local glob="$@" for file in $glob; do local shim="${file##*/}" [ -e "$shim" ] || ln -f .rbenv-shim "$shim" done } mkdir -p "${HOME}/.rbenv/shims" cd "${HOME}/.rbenv/shims" rm -f * create_prototype_shim make_shims ../versions/*/bin/* shopt -s nullglob RBENV_REHASH_PLUGINS=(/etc/rbenv.d/rehash/*.bash ${HOME}/.rbenv/rbenv.d/rehash/*.bash) shopt -u nullglob for script in ${RBENV_REHASH_PLUGINS[@]}; do source $script done rm -f .rbenv-shim