Deve ser instalado em todo o sistema ou em nível de usuário?
Estou construindo uma configuração vagabunda, e parte disso está instalando o rbenv. Eu estou usando o bibliotecário-chefe para gerenciar todos os meus livros de culinária do chef, e ele instala o rbenv e o ruby-build.
No entanto, quando tentei ssh no meu Vagrant VM e digiteruby -v
Eu tenho o sistema padrão instaladoruby 1.8.7 (2012-02-08 patchlevel 358) [x86_64-linux]
. Pensando que talvez o rbenv não estivesse instalado, eu tentei rodarrbenv versions
, mas rbenv foi de fato instalado:
vagrant@precise64:~$ rbenv versions
* system (set by /opt/rbenv/version)
Então eu tenteirbenv install [version]
:
vagrant@precise64:~$ rbenv install 1.9.3-p327
[...]
BUILD FAILED
[...]
test -z "/opt/rbenv/versions/1.9.3-p327/include" || /bin/mkdir -p "/opt/rbenv/versions/1.9.3-p327/include"
/bin/mkdir: cannot create directory `/opt/rbenv/versions/1.9.3-p327': Permission denied
Que falhou comPermission denied
. Eu tentei instalar novamente comsudo
:
sudo rbenv install 1.9.3-p327
E isso funcionou. Então eu tentei correrrbenv versions
novamente:
vagrant@precise64:~$ rbenv versions
* system (set by /opt/rbenv/version)
Mas ainda diz apenassystem
Ruby está instalado. No entanto, se eu executar comsudo
:
vagrant@precise64:~$ sudo rbenv versions
* system (set by /home/vagrant/.rbenv/version)
1.9.3-p327
rbenv versions
agora mostra1.9.3
foi instalado.
Portanto, parece haver uma desconexão, já que essa versão do rbenv e do meu ruby agora está instalada no nível do sistema e não no nível do usuário.
Estou usando orbenv-cookbook. Eu gostaria de ter rbenv configurado com chef, porque isso me impede de configurá-lo manualmente, pós-instalação.
A outra questão que estou tendo é que parece tudo que é controlado por rubis, comogem
, também está sofrendo a mesma desconexão.
vagrant@precise64:~$ gem install bundler
Fetching: bundler-1.3.5.gem (100%)
ERROR: While executing gem ... (Gem::FilePermissionError)
You don't have write permissions into the /opt/vagrant_ruby/lib/ruby/gems/1.8 directory.