Este processo é pensado em desenvolvedores que tem interesse de utilizar os recursos do Linux no Windows para explorar o melhor dos dois mundos. No final você poderá programar no WSL2 (Linux) remotamente pelo VS Code do Windows de forma transparente, leve e super funcional.
Este processo também instala ambientes virtuais para Python, permitindo alterar versões facilmente, conforme a necessidade dos projetos, sem ter conflitos. Para isto é utilizado o pyenv.
Também é instalado o poetry para gerenciar bibliotecas PIP de forma similar ao que o Node faz.
Para conhecer comandos básicos vá para as sessões pyenv e poetry respectivamente.
Opcionalmente você também pode ficar com um terminal bonitão e com recursos de auto-completar. Veja em Windows Terminal + ZSH.
Você deve estar executando o Windows 10 versão 2004 e superior (Build 19041 e superior) ou o Windows 11.
Abra o Powershell em modo administrador e insira o comando:
wsl --install
Após finalizar, abra WSL pesquisando no menu iniciar.
Conclua a instalação criando um usuário e senha. Após isso feche a janela do WSL.
Você pode seguir de duas formas agora em relação ao terminal.
- Bash Simplão: Instala o básico* pra funcionar no Bash.
- Windows Terminal + ZSH: Instala o básico* pra funcionar no ZSH + o ZSH com plugins de autocomplete e aparência bonitona e informativa de terminal.
Exemplo de aparência (tem vários temas):
*básico: Integração vscode, pyenv e poetry
Siga as etapas a seguir para instalar apenas o básico pra funcionar o pyenv e poetry no Bash.
Execute o comando de terminal a seguir no WSL.
/bin/bash -c "$(curl -fsSL https://gist.githubusercontent.com/alexandremendoncaalvaro/2b9a6cc9a3a5b1ee2b0980502efc50ad/raw/729b5bd19c6eaff19aac20f773e1eefb5b5b841c/config-ubuntu-py-bash.sh)"
*Use a senha criada para o Ubuntu caso necessário.
**Os comandos a seguir foram criados por mim e estão no meu gist. Para verificar cada linha do que é executado, acesse: https://gist.githubusercontent.com/alexandremendoncaalvaro
Pronto! Basta configurar o VSCode e está pronto para usar os recursos do pyenv e poetry.
Exemplo de aparência (tem vários temas):
-
Baixe e instale essas 4 fontes no Windows para os recursos do Ubuntu aparecerem corretamente:
-
Instale e abra o Windows Terminal usando a Microsoft Store.
- Clique na "seta pra baixo", ao lado do "+"
- Vá em Settings
- No menu a esquerda selecione Ubuntu > Appearance
- Troque a Font Face para MesloLGS NF
- Salve
Execute o comando a seguir no Windows Terminal.
/bin/bash -c "$(curl -fsSL https://gist.githubusercontent.com/alexandremendoncaalvaro/b468a2e7410403b2506608ff12325ece/raw/5059c662b880cd0777f4bd42f69c34c00ec068bc/config-ubuntu-py-pt1.sh)"
*Use a senha criada para o Ubuntu caso necessário.
**Os comandos a seguir foram criados por mim e estão no meu gist. Para verificar cada linha do que é executado, acesse: https://gist.githubusercontent.com/alexandremendoncaalvaro
Feche o terminal e abra novamente.
Nessa etapa a aparencia do terminal é configurada através de um Wizzard com vários passos. Deixe conforme suas preferências.
Execute o próximo comando:
/bin/bash -c "$(curl -fsSL https://gist.githubusercontent.com/alexandremendoncaalvaro/6eb05914ed4183718a72edcbfd41c053/raw/47754b0fb883810ea3660a520262309990ad1a17/config-ubuntu-py-pt2.sh)"
*Use a senha criada para o Ubuntu caso necessário.
Instale as extensão Visual Studio Code Remote - WSL no VS Code.
Se optou pela versão com temas, lembre de ir nas configurações do VS Code e incluir a linha a seguir para alterar a fonte do terminal integrado:
"terminal.integrated.fontFamily": "MesloLGS NF",
Existem várias formas de acessar seus projetos no WLS, a minha favorita é abrir o WSL no Windows Terminal, navegar até a pasta do meu projeto e digitar:
code .
O VS Code do seu Windows vai abrir acessando seu projeto remotamente (via SSH) no WLS. Parece mágica e funciona incrivelmente bem!
Alguns exemplos de uso do pyenv
Listar as versões do python que já temos instalada no sistema:
pyenv versions
Listar as versões do python disponíveis para instalação:
pyenv install -l
Instalar a versão do python escolhida:
pyenv install 3.10.14
Selecionar a versão do python que instalamos como global para todos os projetos:
pyenv global 3.10.14
https://github.com/pyenv/pyenv#usage