Categorias
Tecnologia

Collabora desenvolve driver Wayland para Wine

Depois de anunciar várias ações no desenvolvimento do kernel Linux 5.10 LTS, a Collabora não para e já desenvolve um novo driver Wayland para funcionar no Wine. O Wine é uma camada de compatibilidade capaz de rodar aplicativos Windows em Linux, MacOS e outros sistemas. Ele foi desenvolvido e usado por mais de duas décadas e também é o que o Steam Proton usa para permitir que jogos do Windows rodem em sistemas Linux.

Alexandros Frantzis foi quem anunciou a criação de um driver Wayland para Wine. Este driver permite que aplicativos Windows GDI/OpenGL sejam executados em compositores Wayland sem qualquer uso de X11/XWayland.

O código ainda não foi incorporado ao Wine e, devido ao congelamento do código, é tarde demais para aparecer no lançamento do Wine 6.0 do próximo mês, mas o branch experimental está disponível hoje para os interessados.

Este driver Wayland está funcionando para aplicativos GDI/OpenGL básicos e todas as funcionalidades principais, mas alguns itens estão faltando. Ainda a ser abordado é a minimização de janelas, suporte de layout de teclado, capturas, vários monitores e suporte Vulkan.

Em sistemas Linux, o Wine atualmente usa seu driver X11 para fazer interface com o servidor de exibição X11. Em muitos sistemas modernos, onde o Wayland se tornou o protocolo de servidor de exibição preferido, outra camada é necessária para traduzir entre o X11 e o Wayland. Isso vem na forma de um servidor X11 especial chamado XWayland. Esta configuração funciona. Porém, a dependência extra do X11/XWayland é uma fonte de problemas.

Collabora desenvolve driver Wayland para Wine

Collabora desenvolve driver Wayland para Wine

O ideal seria se o Wine pudesse ‘falar’ diretamente com Wayland. É aí que entra a Collabora.

Após vários meses de trabalho, temos o prazer de anunciar uma primeira proposta de driver Wayland para Wine. Neste ponto, a proposta está na forma de um RFC (Request For Comment) , a fim de explorar a melhor forma de avançar com o upstreaming e posterior desenvolvimento do driver.

O protocolo do Wayland é mais restrito em comparação com sistemas de exibição mais tradicionais como X11 e win32. Isso traz um conjunto único de desafios na integração do Wayland com o Wine. Como o modelo da janela do Wayland não é baseado em um único espaço de coordenadas 2D plano, como o do X11, o protocolo do Wayland não permite que os aplicativos controlem sua posição absoluta na tela. Os aplicativos Win32 dependem muito desse recurso. Portanto, o driver Wayland usa alguns truques para acomodar muitos casos comuns, como janelas temporárias (menus, dicas de ferramentas etc.).

O driver Wayland atualmente oferece suporte a aplicativos GDI e OpenGL/DirectX. Vem com redimensionamento e manipulação de estado de janela (exceto minimização), entrada de mouse e teclado QWERTY e um único monitor. Isso já nos dá acesso a um grande conjunto de aplicativos. Alguns aplicativos que experimentei e já funcionam bem são Firefox, Stellarium, Supertuxkart, 010Editor, Battle For Wesnoth e GIMP (com algumas ressalvas).

E o Vulkan?

Vulkan não é suportado atualmente, entretanto, já existe outro projeto em https://github.com/varmd/wine-wayland/. Assim, se concentra exclusivamente no Wine Wayland + Vulkan.

Portanto, para as pessoas que desejam jogar com o driver Wayland, o anúncio RFC do wine-devel fornece mais algumas instruções e detalhes técnicos.

Assista, então, ao vídeo mostrando alguns aplicativos do Windows em execução com o driver Wine Wayland no compositor de referência de Weston:

Running applications on the experimental Wayland driver for Wine

Mais detalhes sobre este driver inicial do Wayland para Wine através da lista de discussão do Wine.

Por Claylson Martins

Jornalista com pós graduações em Economia, Jornalismo Digital e Radiodifusão. Nas horas não muito vagas, professor, fotógrafo, apaixonado por rádio e natureza.

Sair da versão mobile