RVM controlla su quale Ruby la tua attuale shell punta, ma non installa un Ruby controllato dall'utente per impostazione predefinita. Se non hai installato versioni specifiche di Ruby tramite RVM, l'unico Ruby che possiedi è l'unico OS X installato e che richiede sudo
di permessi su cui scrivere.
Puoi vedere Rubies disponibili con:
> rvm list
rvm rubies
=* ruby-2.1.2 [ x86_64 ]
# => - current
# =* - current && default
# * - default
Nel mio caso ho installato 2.1.2 ed è sia l'attuale Ruby che il predefinito Ruby quando avvio una nuova shell:
> which ruby
/Users/ian/.rvm/rubies/ruby-2.1.2/bin/ruby
Per installare una versione di Ruby con RVM fare:
> rvm install ruby-2.1
No binary rubies available for: osx/10.10/x86_64/ruby-2.1.3.
Continuing with compilation. Please read 'rvm help mount' to get more information on binary rubies.
...snip...
Install of ruby-2.1.3 - #complete
Ruby was built without documentation, to build it run: rvm docs generate-ri
Ora che hai installato un Ruby gestito da RVM di tua proprietà in modo specifico puoi gem
-installare qualsiasi cosa che ti piace senza bisogno di usare sudo
:
> rvm list
rvm rubies
* ruby-2.1.2 [ x86_64 ]
=> ruby-2.1.3 [ x86_64 ]
# => - current
# =* - current && default
# * - default
> rvm gemdir
/Users/ian/.rvm/gems/ruby-2.1.3
> gem install packer-config
Quella gemma è stata installata per la versione 2.1.3 di Ruby che RVM ha messo sotto ~/.rvm
per me. Se dovessi passare alla versione 2.1.2 tramite rvm use ruby-2.1.2
non vedrei quella gemma, dovrei reinstallarla per renderla disponibile a quella versione di Ruby.
Puoi anche gestire gems come set in modo che non siano nemmeno condivisi con un'installazione di Ruby. Consulta le informazioni di base su gemset sul sito web RVM per ulteriori dettagli.