Quando a Microsoft apresentou seu WSL pela primeira vez, há pouco menos de 4 anos, muitos usuários ficaram maravilhados com a novidade. Entre outras coisas, ter o terminal Linux no Windows nos permite usar muitas ferramentas. Mas esse tipo de "máquina virtual" tem um pequeno problema: na verdade, e explicando isso de forma rápida e ruim, ela não está conectada a nenhum dispositivo de saída, portanto não podemos executar aplicativos com GUI. Ou não oficialmente, porque VcXsrv se ele vai nos permitir.
VcXsrv é um servidor Windows X baseado em xorg. Este pequeno aplicativo nos permitirá simular que temos um monitor conectado ao nosso WSL, com o qual podemos executar aplicativos com uma interface de usuário. Porque já era possível instalá-los, mas ocorreu um erro quando tentamos executá-los. Neste artigo, mostraremos os passos que você deve seguir se, por exemplo, quiser instalar o Gedit no Windows 10.
Como executar aplicativos Linux com GUI no Windows 10 graças ao VcXsrv
- A primeira coisa que precisamos fazer é instalar o WSL. No este artigo desde setembro passado, você explicou tudo o que precisa para fazê-lo. IMPORTANTE: No momento da escrita, não há necessidade de atualizar para WSL 2; Existem alguns bugs que bloqueiam a execução de aplicativos Linux com GUI no Windows 10. Eles provavelmente serão corrigidos no futuro, mas isso não é possível agora.
- Em seguida, instalamos o VcXsrv, disponível em este link.
- Durante a instalação, deixaremos tudo como padrão. Ao final da instalação, VcXsrv será executado em segundo plano e poderemos acessar suas opções na bandeja do sistema.
- Se nos mostrar o aviso do firewall, permitimos o acesso "VcXsrv windows xserver".
- A próxima etapa é executar os testes. Em teoria, podemos instalar qualquer aplicativo e o comando dependerá da distribuição Linux que instalamos. No Ubuntu e derivados, o comando é o usual (sudo apt install APP). Lembramos que instalar os aplicativos no WSL é um processo longo, então você terá que ser paciente.
- Assim que tivermos o aplicativo instalado, executaremos o seguinte comando:
export DISPLAY=:0
- Uma vez que o comando é executado, devemos iniciar o aplicativo. Para fazer isso, temos que escrever seu nome no terminal. No caso de "Gedit", temos que escrever "gedit".
Se quisermos executar vários aplicativos Linux ao mesmo tempo, temos que iniciá-los a partir do terminal windows. Lembre-se que para fazer isso, antes de qualquer comando temos que digitar "wsl" sem as aspas. Teremos que usar o comando da etapa 6 antes de lançar cada aplicativo.
Solução de problemas
Normalmente não há muitos problemas, mas o mais comum é que estamos usando WSL 2, que já explicamos e que atualmente apresenta alguns bugs. O que temos que fazer é rebaixar (downgrade). Faremos da seguinte forma:
- Abrimos o Windows PowerShell e digitamos o seguinte comando para nos mostrar qual versão do WSL estamos usando:
wsl -l -v
- Se nos mostrar apenas as opções de ajuda, presume-se que estamos no WSL 1. Se aparecer informação sobre a versão e em "VERSÃO" aparecer "2", temos que descer digitando o seguinte comando:
wsl --set-version Ubuntu 1
- O próximo passo é paciência. Pode levar de 20 a 30 minutos (ou mais), dependendo do equipamento que estamos usando, para fazer o downgrade. Assim que o processo for concluído, os aplicativos Linux GUI devem funcionar sem problemas.
Tenha cuidado, pode haver problemas com aplicativos de multimídia
O que é explicado neste artigo é para a imagem. Isso significa que podemos executar aplicativos como o Gedit sem problemas, mas não é uma boa ideia instalar aplicativos como o Rythmbox porque o som não será o esperado. Fora isso, os aplicativos funcionam muito bem, como se fossem nativos. Por não depender de um ambiente gráfico inteiro, a “máquina virtual” funciona muito mais fluida que outras, como qualquer uma que instalamos no Virtualbox ou no próprio Hyper-V da Microsoft.
Não está descartado que no futuro as coisas também melhorem em termos de som. Em qualquer caso, o que é explicado neste artigo servirá a todos aqueles que desejam utilizar algumas ferramentas Linux no Windows que não seriam possíveis de outra forma. Qual aplicativo exclusivo do Linux você gostaria de executar no Windows 10?
Contribuição para executá-los do WSL 2 sem ter que fazer downgrade para o WSL 1:
https://github.com/microsoft/WSL/issues/4106
Uma saudação,