Configuração de Desenvolvimento no Windows
Este guia guiará você pela configuração de seu ambiente de desenvolvimento no Windows para contribuir com o AirysChat. Usaremos o Windows Subsystem for Linux 2 (WSL2), que fornece a melhor experiência de desenvolvimento no Windows.Requisitos
Você precisa instalar o Windows Subsystem for Linux 2 (WSL2) na sua máquina com Windows.Pré-requisitos
- Windows 10 versão 2004 ou superior (Build 19041 ou superior) ou Windows 11
- Privilégios de administrador na sua máquina Windows
Passo 1: Ativar o Modo de Desenvolvedor
O primeiro passo é ativar o “Modo de Desenvolvedor” no Windows. Você pode fazer isso abrindo as Configurações e navegando até “Atualização e Segurança”. Lá, escolha a aba à esquerda que diz “Para Desenvolvedores”. Ligue a opção “Modo de desenvolvedor” para ativá-lo.
Passo 2: Ativar o Windows Subsystem for Linux
Em seguida, você deve ativar o Windows Subsystem for Linux. Abra o “Painel de Controle” e vá em “Programas e Recursos”. Clique no link à esquerda “Ativar ou desativar recursos do Windows”. Procure a opção “Subsistema do Windows para Linux” e marque a caixa de seleção ao lado dela.
- ✅ Subsistema do Windows para Linux
- ✅ Plataforma de Máquina Virtual
Passo 3: Instalar o WSL2 e o Ubuntu
Opção 1: Usando a Microsoft Store (Recomendado)
- Abra a Microsoft Store e pesquise por “Ubuntu”
- Instale o Ubuntu 22.04 LTS (ou a última versão LTS)
- Inicie o Ubuntu pelo Menu Iniciar
Opção 2: Usando Linha de Comando
Abra o PowerShell como Administrador e execute:Passo 4: Configuração Inicial do Ubuntu
Quando você iniciar o Ubuntu pela primeira vez, você será solicitado a criar uma conta de usuário:Passo 5: Instalar Dependências Principais
Você precisa instalar as dependências principais do Linux para instalar o Ruby e outras ferramentas.Instalando o RVM e o Ruby
Instale as dependências adicionais necessárias para o RVM:Instalar o Node.js
O AirysChat requer a versão 20 do Node.js. Instale o Node.js do NodeSource usando os seguintes comandos:Instalar o pnpm
Usamos opnpm como gerenciador de pacotes para obter melhor desempenho:
Instalar o PostgreSQL
O banco de dados usado no AirysChat é o PostgreSQL. Use os seguintes comandos para instalar o PostgreSQL:libpq-dev para o Ubuntu:
Instalar o Servidor Redis
O AirysChat usa o servidor Redis para atribuições de agentes e relatórios. Para instalar oredis-server:
Instalar o ImageMagick
O AirysChat usa o ImageMagick para processamento de imagens:Configurar o Git
Configure o Git com suas informações:Configuração Específica para Windows
Instalar o VS Code com a Extensão WSL
- Instale o Visual Studio Code no Windows em https://code.visualstudio.com/
- Instale a extensão Remote - WSL do marketplace de Extensões
- Abra seu projeto no WSL executando
code .do seu terminal WSL
Configurar Permissões de Arquivo
O WSL2 pode ter problemas de permissão de arquivo. Corrija-os:Verificação do Ambiente
Verifique se todas as instalações estão funcionando corretamente:Solução de Problemas Comuns
A instalação do WSL falha
A instalação do WSL falha
Solução: Certifique-se de que a virtualização está ativada na BIOS e que os recursos do Windows estão ativados corretamente:
- Reinicie o computador e entre nas configurações da BIOS
- Ative a virtualização Intel VT-x ou AMD-V
- Ative o Hyper-V nos Recursos do Windows
- Reinicie e tente a instalação novamente
O terminal do Ubuntu não abre
O terminal do Ubuntu não abre
Solução: Redefina o WSL ou reinstale o Ubuntu:
O PostgreSQL falha ao iniciar
O PostgreSQL falha ao iniciar
Solução: Verifique se o serviço do PostgreSQL no Windows está causando conflito:
Erros de permissão negada
Erros de permissão negada
Solução: Corrija as permissões de arquivos:
Desempenho lento
Desempenho lento
Solução: Certifique-se de que o código está armazenado no sistema de arquivos do WSL2:
- Erros Comuns: Verifique Erros Comuns
- Documentação do WSL2: Documentação da Microsoft para WSL
- Comunidade no Discord: Junte-se ao nosso Discord
- Issues do GitHub: Crie uma issue
Seu ambiente de desenvolvimento Windows com o WSL2 agora está pronto para o desenvolvimento do AirysChat! 🪟🐧