A equipe de desenvolvimento do KiCad recebe perguntas frequentes sobre nosso suporte ao Wayland. Considerando que o Fedora e o Ubuntu planejam descontinuar o suporte ao X11 em seus principais ambientes de desktop em um futuro próximo, queremos fornecer orientações claras e transparentes aos nossos usuários sobre o estado atual do suporte ao Wayland no KiCad.
O status atual é funcional, mas degradado
O KiCad roda em sistemas Wayland, mas com limitações significativas e problemas conhecidos que degradam substancialmente a experiência do usuário. Embora seja possível projetar PCBs usando o KiCad no Wayland, você encontrará diversos problemas que não podemos corrigir no nível do aplicativo.
Os seguintes problemas são questões conhecidas nos protocolos Wayland ou em sua implementação em compositores de desktop, gerenciadores de janelas ou outras camadas na pilha de exibição que estão além da nossa capacidade de resolver:
Problemas de gerenciamento de janelas
- Posicionamento e restauração de janelas : O Wayland não permite atualmente o controle do posicionamento das janelas. Isso significa que, ao abrir o KiCad, ele não consegue se lembrar de onde você colocou as janelas pela última vez.
- Posicionamento do painel encaixado : painéis e barras de ferramentas encaixados não podem ser gerenciados ou restaurados adequadamente
- Coordenação de múltiplas janelas : Problemas com o gerenciamento de múltiplas janelas do KiCad simultaneamente
- Limitações de arrastar janelas : arrastar guias e painéis entre áreas não funciona ou não é confiável
Problemas de entrada e interação
- Distorção de cursor/ponteiro : essencial para muitas operações de CAD, está disponível condicionalmente em algumas implementações do Wayland, dependendo do suporte para extensões de protocolo opcionais
- Gerenciamento de foco : comportamento imprevisível do foco da janela que pode interromper os fluxos de trabalho
- Manuseio de dispositivos de entrada : vários problemas com dispositivos de entrada especializados e teclas de atalho
Problemas de desempenho e estabilidade
- Alto uso de CPU/GPU : picos de consumo de recursos que não ocorrem no X11
- Falhas gráficas : artefatos de renderização e corrupção de exibição
- Congelamentos e travamentos de aplicativos : problemas de instabilidade específicos do ambiente Wayland
- Funcionalidade da área de transferência : operações de copiar/colar não confiáveis entre aplicativos
Limitações de diálogo e interface do usuário
- Comportamento do diálogo modal : problemas com posicionamento, foco e interação do diálogo
- Integração de ferramentas externas : problemas ao iniciar e gerenciar aplicativos externos
Por que esses problemas persistem
Esses problemas existem porque o design do Wayland omite funcionalidades básicas das quais os aplicativos de desktop para X11, Windows e macOS dependem há décadas — coisas como a capacidade de posicionar janelas ou distorcer o cursor do mouse. Essa funcionalidade foi omitida por design, não por descuido.
A fragmentação também não ajuda. O GNOME interpreta protocolos de uma maneira, o KDE de outra, e compositores menores de outra. Como desenvolvedores de aplicativos, não podemos depender de uma implementação consistente de vários protocolos Wayland e extensões experimentais. O Linux já representa uma pequena parcela da base de usuários do KiCad. A fragmentação adicional por gerenciadores de janelas cria uma sobrecarga de suporte insustentável. O mais frustrante é que não podemos resolver esses problemas sozinhos. Os problemas residem em protocolos Wayland, gerenciadores de janelas e compositores. Essas não são coisas que nós, como desenvolvedores de aplicativos, podemos codificar ou corrigir.
Não somos o único aplicativo enfrentando esses desafios e esperamos que o ecossistema Wayland amadureça e desenvolva uma abordagem mais equilibrada e consistente que permita que os aplicativos funcionem de forma eficaz. Mas ainda não chegamos lá.
Nossa abordagem e política
A equipe do KiCad tomou a decisão estratégica de:
- Evite soluções alternativas específicas do gerenciador de janelas que exigiriam a manutenção de caminhos de código separados para diferentes ambientes de área de trabalho
- Continue construindo e testando a compatibilidade do Wayland sempre que possível, mas sem dedicar recursos primários de desenvolvimento a ele
- Concentrar nosso tempo limitado de desenvolvimento em recursos e melhorias que beneficiam todos os usuários
- Manter documentação clara sobre as limitações do Wayland para definir expectativas apropriadas do usuário
Política de Relatório de Bugs para Usuários do Wayland
Não investigamos nem oferecemos suporte a relatórios de bugs relacionados a problemas específicos do Wayland. Isso inclui problemas com:
- Posicionamento, dimensionamento ou foco da janela
- Congelamentos ou travamentos de aplicativos que não ocorrem no X11
- Alto uso de CPU/GPU exclusivo do Wayland
- Problemas de dispositivo de entrada específicos do Wayland
- Falhas gráficas ou problemas de renderização
- Problemas de funcionalidade da área de transferência
- Quaisquer outros problemas que não podem ser reproduzidos em sistemas X11
Relatórios de bugs sobre a funcionalidade interna do KiCad que não envolvem gerenciamento de janelas ainda são bem-vindos e serão investigados normalmente.
Recomendações para usuários
Para uso profissional
Se você usa o KiCad profissionalmente ou precisa de uma experiência confiável e completa, recomendamos fortemente:
- Use ambientes de desktop baseados em X11, como:
- XFCE com X11
- KDE Plasma com X11
- MATE
- Ambientes de desktop tradicionais que mantêm o suporte X11
- Instale gerenciadores de exibição compatíveis com X11, como LightDM ou KDM, em vez de GDM, se sua distribuição for definida como Wayland apenas por padrão.
- Escolha distribuições que mantenham o suporte ao X11 – algumas distribuições estão migrando para configurações somente Wayland que podem não atender às suas necessidades
Para uso casual
Se você estiver disposto a aceitar limitações e frustrações ocasionais, o KiCad rodará no Wayland. No entanto, esteja preparado para:
- Incapacidade de restaurar seus layouts de janela preferidos
- Falhas ou congelamentos ocasionais
- Produtividade reduzida devido a limitações de interface
- É preciso contornar várias peculiaridades da interface do usuário
Esperando ansiosamente
Reconhecemos que o ecossistema de desktop Linux está evoluindo e não estamos tentando impedir essa evolução. No entanto, acreditamos que a produtividade do usuário vem em primeiro lugar – nossos usuários precisam projetar placas de circuito, não se preocupar com tecnologias experimentais de desktop. Estabilidade e confiabilidade são primordiais para o trabalho profissional, e nossos recursos limitados de desenvolvimento devem se concentrar na funcionalidade principal, em vez de contornar as limitações do protocolo.
Continuamos monitorando o desenvolvimento do Wayland e aceitamos correções de projetos upstream. Interagimos com desenvolvedores de ambientes desktop em conferências como a FOSDEM e fornecemos feedback detalhado sobre nossos requisitos. Houve algum progresso (os protocolos de distorção de ponteiros estão finalmente sendo desenvolvidos), mas muitos problemas fundamentais permanecem sem solução.
Contribuindo para Soluções
Se você é um desenvolvedor interessado em melhorar o suporte do Wayland para o KiCad, há várias maneiras de ajudar:
- Contribuir para projetos upstream: Ajude a corrigir problemas em protocolos Wayland, gerenciadores de janelas ou wxWidgets
- Desenvolvimento de patrocinadores: empresas que dependem do Wayland e do KiCad podem financiar melhorias específicas
- Teste e forneça feedback: ajude-nos a identificar quais problemas são mais críticos para seus fluxos de trabalho
Financiamos o desenvolvimento de alguns wxWidgets para ajudar a melhorar a compatibilidade com o Wayland, mas muitos problemas exigem mudanças mais amplas no ecossistema do Wayland. Incentivamos contribuições que possam beneficiar todos os aplicativos, não apenas o KiCad.
Conclusão
Tentamos ser pragmáticos. Apoiamos o que funciona, documentamos o que não funciona e concentramos nossos esforços de desenvolvimento onde eles trarão mais benefícios para nossos usuários. Ajustaremos nossa posição conforme o Wayland evolui, mas não comprometeremos a confiabilidade e a funcionalidade do KiCad.
Por enquanto, se você precisar usar o KiCad no Linux, use o X11.