Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.
Rubydans AL2023
Rubyruby3.2 ouruby3.4). Ruby3.4 fournit également le binaire avec espace de noms MRI (Matz's Ruby Interpreter)ruby3.4-mri, qui fait référence à l'implémentation de référence standard basée sur le C de. Ruby Cependant, une seule Ruby version peut être active à la fois. Cette version active fournit les répertoires et les noms de fichiers par défaut, tels que ruby, gem ou bundle, en les pointant vers le runtime actuellement actif.
Ceci est réalisé en utilisant les fonctionnalités de l'outil des alternatives. Il est important de se rappeler que les noms des exécutables par défaut sont virtuels et peuvent changer à tout moment lorsque vous pointez vers une autre Ruby version installée. Cette flexibilité permet aux logiciels qui utilisent Ruby in the Shebang de sélectionner la version souhaitée lorsqu'ils sont invoqués. Toutefois, lorsqu'une version spécifique de Ruby est requise, la persistance de la version peut être obtenue en appelant l'exécutable avec espace de noms (par exemple, ruby3.2 ouruby3.4), qui utilisera toujours la version spécifiée du moteur d'exécution. De plus, les exécutables avec espace de noms des outils gem et bundler, tels que,, ou ruby3.2-gem ruby3.4-gemruby3.2-bundler, sont toujours associés à la Ruby version correspondanteruby3.4-bundler, quel que soit le moteur d'exécution actuellement actif.
Rubyest distribué sous la forme de plusieurs packages avec un espace de noms commençant par « »ruby{MAJOR.MINOR}. Ces packages fournissent Ruby, des versions compatibles des outils Gem et Bundler, de la documentation, des bibliothèques, etc. Par exemple, le runtime core Ruby 3.2 est fourni par le ruby3.2 package, qui intègre ruby3.2-rubygems (fournissant une gemme) et ruby3.2-rubygem-bundler (fournissant un bundle et un bundler) en tant que dépendances.
Après l'installation d'une Ruby version, les entrées pour les outils complémentaires peuvent s'afficher comme nulles dans la configuration des alternatives. Cela peut être vérifié en exécutantalternatives --display ruby. Si les entrées apparaissent comme nulles, elles doivent être enregistrées manuellement à l'aide dealternatives --install. Par exemple, pour enregistrer tous les outils complémentaires pour la version Ruby 3.4 :
sudo alternatives --install /usr/bin/gem gem /usr/bin/ruby3.4-gem 34 sudo alternatives --install /usr/bin/bundle bundle /usr/bin/ruby3.4-bundle 34 sudo alternatives --install /usr/bin/bundler bundler /usr/bin/ruby3.4-bundler 34 sudo alternatives --install /usr/bin/erb erb /usr/bin/ruby3.4-erb 34 sudo alternatives --install /usr/bin/racc racc /usr/bin/ruby3.4-racc 34 sudo alternatives --install /usr/bin/rdoc rdoc /usr/bin/ruby3.4-rdoc 34 sudo alternatives --install /usr/bin/ri ri /usr/bin/ruby3.4-ri 34
La valeur de priorité (par exemple, 34 pour Ruby 3.4, 32 pour Ruby 3.2) doit correspondre à la priorité utilisée dans l'entrée alternative principale de Ruby. Une fois enregistrés, les outils complémentaires seront gérés automatiquement parallèlement à l'alternative Ruby.
L'outil des alternatives fournit une commande unique pour passer d'une Ruby version à l'autre. Par défaut, les alternatives sont configurées pour être en mode auto, qui utilise les priorités pour déterminer la Ruby version actuellement active. Cependant, vous pouvez activer n'importe quelle version installée à tout moment. Actuellement, toutes les versions prises en charge Ruby ont la même priorité, ce qui signifie que la première version installée sera automatiquement activée.
Quelques exemples utiles d'utilisation d'alternatives
-
Vérifiez quelles alternatives sont configurées pour
alternatives --list -
Vérifiez la configuration actuelle de Ruby
alternatives --display ruby -
Modifier la version de manière interactive Ruby
alternatives --config ruby -
Passez en mode manuel et sélectionnez une version spécifique
alternatives --set ruby /usr/bin/ruby{MAJOR.MINOR} -
Revenir en mode de sélection automatique des versions
alternatives --auto ruby