RVM is not a function, selecting rubies with

RVM is not a function, selecting rubies with 'rvm use …' will not work.

 

Такую ошибку можно получить при указании Ryby Version Manager на установленную версию ruby, которую нужно использовать, т.е. при выполнении следующей команды:

usertest@server:/etc/apache2/sites-available$ rvm use ruby-2.1.1


 

Вместе с ошибкой при этом выводится сообщение о необходимости корректировки настроек оболочки пользователя:

You need to change your terminal emulator preferences to allow login shell.
Sometimes it is required to use `/bin/bash —login` as the command.
Please visit https://rvm.io/integration/gnome-terminal/ for an example.

 

 

 

Как устранить ошибку RVM is not a function, selecting rubies with 'rvm use …' will not work

Ошибка возникает из-за того, что не иницализированы переменные среды. Она не будет выводиться и версия Ruby выберетися корректно после выполнения команды  source и указания файла .profile в домашнем каталоге пользователя.

source $HOME/.profile

 

Затем следует повторно дать указание на использование определенной версии пакета

rvm use ruby-2.1.1

 

Вывод в консоль покажет, что в этот раз команда выполнена успешно

Using /home/usertest/.rvm/gems/ruby-2.1.1

 

Также можно добавить флаг —default, версия будет использоваться для всех проектов если другая не задана вручную или не определена в файле $HOME/.rvmrc

 

rvm use ruby-2.1.1  —default

 

Также читайте про RVM и разворачивание сайта на сервере с использованием самой популярной связки для деплоя Ruby проектов связки Nginx и Unicorn