Configurando o Windows para trabalhar com Python no WSL 2
Tags: python, windows, wsl, configuration
Published: 2021-09-27 17:10:51

Se você trabalha com desenvolvimento ou está começando a aprender Python no Windows, talvez você já tenha tido alguma dificuldade com gestão de dependências, variáveis de ambiente e até mesmo permissão pra fazer as coisas porque não abriu seu *Prompt* de Comando como administrador. Esse post pode te dar um ganho de produtividade **gigante**, sem precisar abandonar esse tão famoso sistema operacional! 

O que vamos fazer aqui é configurar um terminal de Ubuntu, uma distribuição de Linux mega popular, dentro do Windows, usando o WSL, ou Windows Subsystem for Linux. Sem a necessidade de ter dois Sistemas Operacionais instalados no seu PC, sem precisar de máquina virtual e nem nada. Tudo integrado e facinho 🤓. Aí além disso, vamos também rodar uma IDE super famosa de dentro desse terminal e garantir que você já consiga "sair jogando" pra desenvolver teu código Python (ou qualquer outra linguagem do seu interesse) depois de ler essa postagem.
 
Dividi em algumas pequenas etapas e vou colocar algumas capturas de tela pra você se guiar. Se tiver qualquer dúvida, pode comentar aqui que eu respondo se souber. Vamos nessa?

## Instalando o WSL

O primeiro passo então é instalar e habilitar o WSL na sua máquina. Pra isso, abra **como administrador** o Powershell

![pwsh](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/9l6zu3htt2jn32l8zoz2.jpg)

E então execute o comando:

```bash
$ wsl --install
``` 

Esse processo vai demorar alguns minutos, dependendo da velocidade da sua internet e também do seu processador. Pra mim aqui foi em torno de 10 minutos. Uma vez que tiver tido sucesso ao instalar, reinicie seu computador.

## Configurando o Ubuntu

Após reiniciar seu computador, procure por "Ubuntu" na barra de tarefas e abra a aplicação. Ele vai pedir pra você configurar um usuário e senha, que são as credenciais que você vai colocar pra configurar o seu terminal. Essa senha vai ser usada em muitas ocasiões que você precise de acesso como administrador, mas, por ser Linux (❤️), você consegue fazer isso sem a necessidade de reabrir o terminal e pra um comando específico, com `sudo nome-do-comando`. Enfim, escolha uma senha fácil de digitar e termine de configurar. Depois, feche a aplicação.

![configuring](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/454i1uhhcd5uf3y7d6bp.jpg)
 

## Ajustando a versão do WSL

Agora, abra de novo o Powershell como administrador e garanta que você está configurado na versão 2 do WSL, com o seguinte comando:

```bash
$ wsl --set-default-version 2
```

## Instalando o VS Code e habilitando a extensão do WSL

Último mas não menos importante, [baixe o Visual Studio Code](https://code.visualstudio.com) e instale na sua máquina. Certifique-se de que você adiciona o comando "code" no seu $PATH (que por padrão já é habilitado).

Uma vez feito isso, procure e baixe uma extensão chamada Remote - WSL, clicando no ícone de blocos na aba esquerda do seu VS Code:

![remote-wsl](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/bh7bbs80xek1edrkcpo8.jpg)
 
Feito isso, feche o VS Code.

## Executando seu "olá mundo" de dentro do WSL

Agora pra etapa final, reabra o Ubuntu, crie uma pasta e inicie o VS Code de dentro do WSL, da seguinte forma:

![criar-pasta-iniciar-vs-code](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/oshi6kj718btcdpkzhxh.jpg)

Isso vai abrir a janela do VS Code e a partir daí você já consegue criar seu primeiro código `hello-world.py` com Python. Note que você está executando o VS Code de dentro do ambiente Ubuntu.

![hello-world](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/gbwfmonw6loh66vlvur6.jpg)

Então clique em "New Terminal" na aba de cima e execute o seu código dando o comando:

```bash
$ python3 hello-world.py

OLHA EU AQUI MUNDO!
```

Uhuuul! 🥳

## Concluindo

Essa postagem foi bem curtinha, porque esse é um processo muito simples. Espero que ela seja útil pra você e se algo não ficou claro, me avisa aqui nos comentários! 

Um abraço e até a próxima 🍻