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