O asdf é um gerenciador de versões para várias linguagens de programação. Um gerenciador de versão com suporte para Python, Ruby, Node.js, Elixir, Erlang, Rust e muitas outras linguagens. Basta instalar o plugin da sua linguagem favorita através da linha de comando do seu terminal com o asdf e já começar a codar 💻
Vamos baixar e configurar o asdf e instalar um plugin para cada ferramenta que precisamos gerenciar. Existem diversas formas de instalação para o asdf. Vamos supor que você está usando o macOS, então rode o seguinte comando no seu terminal:
brew install asdf
Agora, se você usa o subsistema do Windows (WSL 2) ou o Linux (ou o Ubuntu) para instalar o asdf, basta rodar o seguinte comando no seu terminal:
git clone https://github.com/asdf-vm/asdf.git ~/.asdf --branch v0.10.0
Na sequência, adicione as linhas abaixo no arquivo ~/.bashrc
(ou ~/.zshrc
):
. $HOME/.asdf/asdf.sh
. $HOME/.asdf/completions/asdf.bash
Após adicionar as linhas acima, você pode abrir um novo terminal e digitar o comando asdf version
para verificar se foi instalado com sucesso. Para ver a versão do asdf, digite o comando:
Agora que você tem o asdf instalado, vamos precisar instalar algum plugin. Como exemplo, vamos adicionar o plugin do Ruby ao asdf. Basta executar o comando:
asdf plugin add ruby
Ou o comando:
asdf plugin add ruby https://github.com/asdf-vm/asdf-ruby.git
Agora podemos instalar uma versão do Ruby. Para ver quais versões estão disponíveis, rode o comando:
asdf list all ruby
Ou, baseado na versão desejada, com o comando:
asdf list all ruby 3
Dessa forma ☝️ você consegue listar diferentes versões a partir da 3. Veja:
Vamos instalar a última versão do Ruby, com o comando:
asdf install ruby latest
Temos a última versão do Ruby instalada no asdf, mas ainda precisamos definir a versão que vamos usar para codificar. Existem duas formas de definir uma versão, local e global.
A primeira é definir uma versão local, ou seja, que vai rodar e estar disponível no seu diretório desejado. Vamos imaginar um diretório chamado ~/parazito/code/ruby
, e dentro dele você roda o comando:
asdf local ruby latest
No diretório atual, rode o comando: ruby -v
. Como na imagem abaixo:
Pronto! 🎉 Você tem acesso a última versão do Ruby no seu diretório desejado (ou atual).
Você também consegue definir uma versão global, que vai estar presente em todo o sistema operacional, e não apenas no seu diretório desejado. Com o comando:
asdf global ruby latest
Agora você tem acesso a última versão do Ruby em qualquer diretório que você desejar.
E se você quiser instalar qualquer outra linguagem, como Elixir, basta rodar os comandos:
asdf plugin add elixir
asdf install elixir latest
E definir a versão:
asdf global elixir latest
Você acabou de instalar e definir a última versão do Elixir para ser usado em qualquer diretório do seu sistema que você desejar. Vejamos:
Logo abaixo segue um exemplo do comando asdf list
, quando temos diversas ferramentas instaladas.
Existem diversos plugins do asdf. Além de linguagens de programação, você também consegue instalar o PostgreSQL, redis, RabbitMQ, MongoDB, Terraform, entre outros.
Veja mais sobre como o asdf funciona e outras formas de ser usado na página do asdf.