Installez et gérez plusieurs versions de Ruby grâce à ASDF sous MacOs

Asdf est un gestionnaire de versions pour plusieurs langages et prends notamment très bien en charge Ruby et Rails.

Vous pouvez toujours vous référer à mon article ici qui fait un comparatif des autres gestionnaires de versions pour Ruby !

Passons rapidement en revue ses principaux avantages :

✔ Il gère plusieurs langages comme Python, Elexir, Go !

✔ Un ensemble de plugins disponibles dans l’écosystème à ajouter selon vos besoins

✔ Il dispose d’un seul fichier de configuration pour gérer les outils, les runtimes et les versions.


♦ Installation et configuration de ASDF ♦

Pour l’installation, il suffira d’utiliser le gestionnaire de paquets Homebrew.

⚠ N’oubliez pas d’avoir une version de Xcode à jour !

$ brew install asdf 

ajouter asdf à notre fichier .zshrc

Brew nous indique :

To use asdf, add the following line to your ~/.zshrc :
. /opt/homebrew/opt/asdf/libexec/asdf.sh

Faites donc :

echo -e "\n. $(brew --prefix asdf)/libexec/asdf.sh" >> ~/.zshrc

Pour vérifier que votre fichier a bien été modifié :

vi ~/.zshrc  

Vous devriez obtenir ceci :

Si ce n’est pas le cas, fermez et relancez votre terminal.

Vous pouvez aussi vérifier en faisant un

echo $PATH

Ajouter le fichier de configuration

Il se peut que vous travaillez sur des projets assez anciens qui utilisent un ruby-version. Vous pouvez donc ajouter un fichier .asdfrc pour permettre à ASDF de les lire.

echo "legacy_version_file = yes" >> ~/.asdfrc
cat ~/.asdfrc
Sortie >>>>>>>>> legacy_version_file = yes

Faites de même pour le tool-versions

echo "legacy_version_file = yes" >> ~/.tool-versions
cat ~/.asdfrc
>>>>> legacy_version_file = yes

♦ Installation de Ruby via ASDF ♦

Pour installer Ruby, il faudra tout d’abord installer le plugin correspondant

asdf plugin add ruby

Une fois installé, vous pouvez lister l’ensemble des versions disponibles :

asdf list all ruby

Installer la dernière version :

 asdf install ruby latest

OU installer une version de Ruby spécifique :

asdf install ruby 3.1.2

Vérifiez désormais la version Ruby :

ruby --v 

⚠ Si cela ne correspond pas : Fermez et relancez votre terminal.


♦ Gérer les différentes version de Ruby

Installez les différentes versions que vous voulez et listez toutes celles dont vous disposez.

asdf list ruby

>>> 3.1.0
>>> 3.1.2

Ici, j’ai 2 versions de Ruby installé :

  • La 3.1.2
  • La 3.1.0

Vous pouvez ensuite spécifier une version par défaut de Ruby dans votre ~/.tool-versions personnel. Vous pouvez définir le ~/.tool-versions avec une commande :

asdf global ruby 3.1.2

Pour remplacer la version par défaut de Ruby pour un projet particulier, accédez au répertoire racine du projet et entrez la commande asdf local ruby <version>.

asdf local ruby 3.1.0

♦ Désinstallez ASDF proprement ♦

Pour simplement désinstaller une version :

asdf uninstall Ruby 3.1.0

Pour désinstaller ASDF de Homebrew et ses dépendances :

 brew uninstall --force asdf
 brew autoremove

Une fois fait, réalisez un diagnostic pour être sûre que tout est ok :

$ brew list
==> Formulae
$ brew deps --tree --installed
$ brew list asdf
Error: No such keg: /opt/homebrew/Cellar/asdf

Supprimez ensuite la configuration asdf du ~/.zshrc :

. /usr/local/opt/asdf/asdf.sh

Supprimez tous les fichiers de configuration asdf de votre répertoire utilisateur :

 rm -rf ~/.asdf/
 rm -rf ~/.tool-versions

Vous aimerez aussi...