Differences between revisions 5 and 6
Revision 5 as of 2019-12-24 11:00:45
Size: 4966
Comment: sync with English master v.35
Revision 6 as of 2021-12-14 10:55:23
Size: 5118
Comment: sync with English master v.37
Deletions are marked like this. Additions are marked like this.
Line 2: Line 2:
~-[[DebianWiki/EditorGuide#translation|Traduzioni]]: [[Ruby|English]] - Italiano - [[ja/Ruby|Japanese]]-~ <<Include(Ruby, ,from="^##TAG:TRANSLATION-HEADER-START",to="^##TAG:TRANSLATION-HEADER-END")>>
Line 12: Line 12:
== Available interpreters in Debian 10 (buster) == == Interpreti disponibili in Debian 11 (bullseye) ==

|| '''Interprete''' || '''Pacchetto''' || '''Note''' ||
|| MRI 2.7.4 || [[DebianPkg:ruby2.7]] || ||

== Interpreti disponibili in Debian 10 (buster) ==
Line 23: Line 28:
Sfortunatamente Rubinius è stato inserito in jessie. Sfortunatamente Rubinius non è stato inserito in jessie.


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 11 (bullseye)

Interprete

Pacchetto

Note

MRI 2.7.4

ruby2.7

Interpreti disponibili in Debian 10 (buster)

Interprete

Pacchetto

Note

MRI 2.5.5

ruby2.5

JRuby 9.1.17

jruby

Interpreti disponibili in Debian 8 (jessie)

Interprete

Pacchetto

Note

MRI 2.1.5

ruby2.1

JRuby 1.5.6

jruby

Sfortunatamente Rubinius non è stato inserito in jessie.

Dato che non ci sono alternative (MRI) tra cui scegliere, la gestione di update-alternatives è stata rimossa. (Una spiegazione più dettagliata sulla rimozione delle alternative può essere trovata in https://lists.debian.org/debian-ruby/2014/03/msg00077.html e https://lists.debian.org/debian-project/2014/02/msg00028.html )

Interpreti disponibili in Debian 7 (wheezy)

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 (wheezy)

Nota: le istruzioni di seguito usano il comando "rbenv alternatives", che non è disponibile in Debian jessie.

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:

  • Benché ruby-build sia un ottimo strumento per compilare versioni di Ruby che non sono disponibili via APT, si dovrebbe comunque usare le versioni di Ruby pacchettizzate in Debian quando possibile, dato che sono state testate e sono supportate dalla comunità Debian.

    Non segnalare al progetto Debian bug incontrati usando versioni di Ruby compilate in proprio; tali versioni non sono supportate.

Altre pagine del wiki relative a Ruby

  1. BalasankarC/DebianRuby
  2. BalasankarC/DebianRuby/Packaging
  3. BalasankarC/DebianRuby/Packaging/Conventions
  4. BalasankarC/DebianRuby/Packaging/TestFailures
  5. BalasankarC/DebianRuby/Packaging/Tests
  6. JongminKim/Drafts/RubyPackaging
  7. Packaging/ruby-team-meta-build
  8. ReproducibleBuilds/TimestampsInRubyDocumentation
  9. Ruby
  10. Ruby/Packaging/Tests
  11. Ruby/Packaging/newUpstreamRailsApp
  12. SummerOfCode2020/ApprovedProjects/UpstreamDownstreamCooperationInRuby
  13. SummerOfCode2020/UnApprovedProjects/UpstreamDownstreamCooperationInRuby
  14. Teams/DebianRubyExtras
  15. Teams/Ruby
  16. Teams/Ruby/CrossBuilding
  17. Teams/Ruby/Drafts/StateOfTransitionNewPolicy
  18. Teams/Ruby/Drafts/StateOfTransitionNewPolicyReleaseTeam
  19. Teams/Ruby/Drafts/SwitchToOneNine
  20. Teams/Ruby/IRCMeetings
  21. Teams/Ruby/InterpreterTransitions
  22. Teams/Ruby/Jessie
  23. Teams/Ruby/Meeting/Brazil2016
  24. Teams/Ruby/Meeting/Kochi2024
  25. Teams/Ruby/Meeting/Paris2014
  26. Teams/Ruby/Meeting/Paris2015
  27. Teams/Ruby/Meeting/Paris2015/Report
  28. Teams/Ruby/Meeting/Paris2020
  29. Teams/Ruby/Meeting/Paris2023
  30. Teams/Ruby/Packaging
  31. Teams/Ruby/Packaging/Archive
  32. Teams/Ruby/Packaging/Conventions
  33. Teams/Ruby/Packaging/ITP
  34. Teams/Ruby/Packaging/Obsolete
  35. Teams/Ruby/Packaging/RailsApps
  36. Teams/Ruby/Packaging/RailsEngines
  37. Teams/Ruby/Packaging/Tests
  38. Teams/Ruby/Packaging/TransitionsPrimer
  39. Teams/Ruby/Packaging/gem2deb
  40. Teams/Ruby/Packaging/newUpstreamRailsApp
  41. Teams/Ruby/Packaging/origsource
  42. Teams/Ruby/RSpec3
  43. Teams/Ruby/Rails3
  44. Teams/Ruby/Rails3 (foo.tar.gz)
  45. Teams/Ruby/Rails3 (testapp.tar.gz)
  46. Teams/Ruby/Rails4.2
  47. Teams/Ruby/Rails6
  48. Teams/Ruby/Rails6/DependenciesTransition
  49. Teams/Ruby/Rails6/RailsBreakingChanges
  50. Teams/Ruby/Rails6/ReverseDependenciesTransition
  51. Teams/Ruby/Ruby2.2
  52. Teams/Ruby/RubyExtras
  53. Teams/Ruby/RubyExtras/OnRubygems
  54. Teams/Ruby/RubyExtras/Ruby19Porting
  55. Teams/Ruby/RubyExtras/RubyPackageTools
  56. Teams/Ruby/RubyExtras/UpstreamDevelopers
  57. Teams/Ruby/RubyInWheezy
  58. Teams/Ruby/Salsa
  59. Teams/Ruby/UpstreamPledge
  60. Teams/Ruby/Workflow
  61. Teams/Ruby/ruby2.5
  62. it/Ruby
  63. ja/Ruby