image

Acesse bootcamps ilimitados e +650 cursos pra sempre

60
%OFF
Article image
Willian Júnior
Willian Júnior19/08/2023 17:52
Compartilhe

Ambiente de desenvolvimento com WSL

  • #Linux

O que é o WSL?

  • O Windows Subsystem for Linux (WSL) tem a proposta de entregar uma camada de compatibilidade que permite executar um ambiente Linux nativo no Windows.
  • O Wsl não é uma máquina virtual, mas sim uma abordagem de virtualização baseada em containers, que permite emular distribuições linux, como o Ubuntu, Debian, Kali Linux, entre outras, diretamente do seu Windows.

Por que utilizar o WSL?

  • Para aqueles que querem separar o que é pessoal e o que é trabalho, o Wsl pode ser muito útil, pois você pode configurar todo o seu ambiente de desenvolvimento a partir da sua distro Linux. Ou seja, você pode executar linhas de comando nativas do Linux, usar gerenciadores de pacotes como o APT e desenvolver aplicações com as mesmas ferramentas e linguagens que você utilizaria em um Sistema Linux convencional.
  • Outra vantagem do uso do Wsl é a compatibilidade com recursos importantes, como o git e o docker, que foram desenvolvidos inicialmente para o kernel do Linux, sendo assim, seus projetos irão performar muito durante o desenvolvimento.
  • É importante mencionar que o Visual Studio Code é totalmente compatível com o Wsl, podendo ser iniciado a partir de sua distro Linux com o comando "code .".

Minha experiência pessoal com o WSL:

Eu estou usando o Wsl há um tempo e confesso que já estou bem apegado, além de poder usar os comandos Linux (que já tenho uma certa experiência), também posso ter o meu próprio ambiente de desenvolvimento, pois está tudo instalado no Wsl. Portanto, tenho o meu próprio usuário, minhas chaves SSH e algumas ferramentas, como o git e o docker, separados em um ambiente controlado, onde posso configurar de acordo com o meu gosto pessoal, e deixar o meu Windows praticamente apenas para jogar.

Uma alternativa ao Wsl, seria uma máquina virtual, mas pode ser algo complicado de gerenciar, consumindo muitos recursos do sistema, sendo que o Wsl possui uma perfeita integração com o Windows, podendo compartilhar dados entre os dois ambientes, além de performar bem.


image

Dicas e utilitários:

Eu costumo usar o Wsl em conjunto com o Windows Terminal, isso ajuda a manter uma boa dinâmica e acessar rapidamente o meu ambiente de desenvolvimento. Ex:


  • Windows + R:


image


  • "wt" serve para acessar o Windows Terminal, como eu já configurei para abrir direto no Ubuntu, ao dar enter, eu vejo essa tela:

image

Caso alguém tenha interesse, eu posso ensinar como faz, inclusive posso ensinar a modificar a variável de ambiente PS1 (A aparência do prompt de comando).



Para aprender mais:

Documentação do Subsistema Windows para Linux | Microsoft Learn


Desenvolvendo no subsistema Windows para Linux com o Visual Studio Code

Estou totalmente aberto à correções e a novos conhecimentos, logo, podem ficar à vontade para questionarem algo, ou simplesmente acrescentar algo que não foi dito.


Obrigado pela atenção.


* Ps - O wsl é open source, links dos repositórios:


microsoft/WSL: Issues found on WSL (github.com)

microsoft/WSL2-Linux-Kernel: The source for the Linux kernel used in Windows Subsystem for Linux 2 (WSL2) (github.com)



Compartilhe
Comentários (3)
Willian Júnior
Willian Júnior - 19/08/2023 20:02
Amós Silva
Amós Silva - 19/08/2023 18:57

Muito legal, até então não conhecia o WSL.

Dei uma pesquisada agora e vi que infelizmente ele não é open source. Achei uma ideia bem interessante da Microsoft, acredito que isso dê mais segurança para utilizar certos recursos no Windows.

O Virtual Box é open source, por enquanto vou permanecer optando por uma VM open source.

Muito obrigado por ter compartilhado, afinal eu não conhecia.

Moacir Neto
Moacir Neto - 19/08/2023 18:28

Realmente ter a possibilidade de usar uma distro linux dessa forma é muito útil. Eu mesmo só utilizo windows ainda porque gosto de jogos. Caso contrário já teria migrado totalmente a séculos para o linux.

É uma coisa que preciso estudar bastante pois não sou acostumado com linhas de comando, porém como estou começando na área de programação, é algo que preciso dedicar algum tempo.


Parabéns pelo artigo