Translation(s): English - Italiano - Japanese


Ruby in Debian

Questa pagina documenta come installare e usare Ruby in Debian Wheezy. Per informazioni sullo sviluppo dei pacchetti Ruby in Debian, vedere la pagina del Team di Ruby.

Questa pagina è disponibile anche attraverso l'URL accorciato http://deb.li/ruby

Interpreti disponibili

In Debian Wheezy sono disponibili i seguenti interpreti Ruby:

Interprete

Pacchetto

Note

MRI 1.8.7

ruby1.8

MRI 1.9.3

ruby1.9.3

JRuby

jruby

Rubinius

rubinius

Lavoro in corso, di fatto non ancora disponibile

È possibile passare da un interprete Ruby ad uno diverso come programma "ruby" predefinito usando update-alternatives. Ma quando si cambia "ruby", probabilmente si vorrà cambiare anche i programmi predefiniti per "gem", "irb", ecc., perciò esistono scorciatoie per cambiare tutti contemporaneamente.

Selezionare l'interprete Ruby predefinito a livello di sistema

Per selezionare l'interprete Ruby predefinito a livello di sistema, si può usare il pacchetto ruby-switch. Questo deve essere fatto come utente root (o con sudo).

# ruby -v
ruby 1.8.7 (2011-06-30 patchlevel 352) [x86_64-linux]
# ruby-switch --list
ruby1.8
ruby1.9.1
# ruby-switch --set ruby1.9.1
update-alternatives: using /usr/bin/gem1.9.1 to provide /usr/bin/gem (gem) in manual mode.
update-alternatives: using /usr/bin/ruby1.9.1 to provide /usr/bin/ruby (ruby) in manual mode.
# ruby -v
ruby 1.9.3p0 (2011-10-30 revision 33570) [x86_64-linux]
# ruby-switch --auto
update-alternatives: using /usr/bin/ruby1.8 to provide /usr/bin/ruby (ruby) in auto mode.
update-alternatives: using /usr/bin/gem1.8 to provide /usr/bin/gem (gem) in auto mode.
# ruby -v
ruby 1.8.7 (2011-06-30 patchlevel 352) [x86_64-linux]

Selezionare l'interprete Ruby predefinito a livello di singolo utente

Per selezionare l'interprete Ruby predefinito per uno specifico account utente, si dovrebbe usare il pacchetto rbenv:

$ ruby -v
ruby 1.8.7 (2011-06-30 patchlevel 352) [x86_64-linux]
$ rbenv init 
# Caricare rbenv automaticamente aggiungendo
# quanto segue al file ~/.bash_profile:

eval "$(rbenv init -)"
$ echo 'eval "$(rbenv init -)"' >> ~/.bash_profile # o ~/.bashrc, a seconda della propria configurazione
$ rbenv versions
$ rbenv alternatives 
$ rbenv versions
  1.8.7-debian
  1.9.3-debian
$ rbenv global 1.9.3-debian 
$ ruby -v
ruby 1.8.7 (2011-06-30 patchlevel 352) [x86_64-linux]

Sembra che non abbia funzionato, ma ciò accade perché la shell attuale ha già in cache /usr/bin/ruby come posizione di "ruby". Dopo aver avviato una nuova shell, si potrà cambiare il programma ruby predefinito a proprio piacere:

$ ruby -v
ruby 1.8.7 (2011-06-30 patchlevel 352) [x86_64-linux]
$ rbenv global 1.9.3-debian 
$ ruby -v
ruby 1.9.3p0 (2011-10-30 revision 33570) [x86_64-linux]
$ rbenv global 1.8.7-debian 
$ ruby -v
ruby 1.8.7 (2011-06-30 patchlevel 352) [x86_64-linux]

Installare versioni di Ruby non pacchettizzate in Debian

Si può usare il pacchetto ruby-build per installare interpreti Ruby che non sono disponibili in Debian. Notare, tuttavia, ciò che è scritto nel file README.Debian del pacchetto:

Altre pagine del wiki relative a Ruby