Foi anunciado o lançamento do Wayland 1.20.0. Uma das principais novidades estão o suporte a FreeBSD, a substituição do Meson, adição de alguns protocolos (wl_surface, offset permite clientes atualizar buffer, wl_output.name e descrição permite clientes identificarem saídas sem depender do xdg-output-unstable-v1); novo tipo de atributo em definições de protocolo, correções de bugs (principalmente uma race condition para destruir proxies em clientes multi-thread).
O X11 surgiu no Linux na primavera de 1992, mais ou menos um ano depois que Linus ter criado seu emulador de terminal em assembly (é, as coisas acontecem muito rápido no Linux. O kernel 0.02 em Outubro de 1991 com patches que outra pessoa havia escrito para Minix e que nunca foi aceito e por isso foi portado para Linux de acordo com os padrões POSIX e que depois disso foi uma enxurrada de patches que tiveram o mesmo destino (nunca aceitos no Minix e depois portados para Linux); em Dezembro de 1991 já havia sido lançado o kernel 0.11 como versão beta tendo quase todas as características que um kernel Unix precisa, suporte a ser selfhosting, comandos como fdisk, mkfs e fsck e muitos outros recursos; o 0.12 em Janeiro de 1992).
O suporte ao X para Linux foi desenvolvido por um hacker chamado Orest Zborowski e esse foi um patch muito importante pois garças a ele foi adicionado tanto o suporte a interface gráfica quanto ao Unix Domain Sockets (ou de forma mais simples de dizer, o suporte a redes) ao Linux. Isso ocorreu porque, devido o X11 funcionar através da comunicação cliente-servidor, Orest escreveu a camada de sockets para que fosse possível portar o X; o que automaticamente remeteu em aproveitar o mesmo código no Linux para os serviços de rede.
O problema é que o design do X11 é antigo e se torna difícil de trabalhar e seu código para implementar novos recursos ou até mesmo remover bugs. cheguei a explicar sobre seu problema no vídeo abaixo que levou a criação não somente de recursos externos quanto de novos servidores gráficos como o MIR no Ubuntu, o SufaceFlinger no Android e o Wayland na Red Hat:
A realidade é que o X.org é mantido basicamente por nós e assim uma vez que nós pararmos de dar atenção a ele, é improvável que haja quaisquer novos grandes lançamentos a caminho e pode até haver alguma configuração de bitrot ao longo do tempo. Vamos ficar de olho nele já que vamos querer garantir que o X.org fique com suporte até o fim do ciclo de vida do RHEL8 no mínimo, mas que seja um aviso amigável para todos que confiam no trabalho que fazemos mantendo a pilha de gráficos do Linux, vão para o Wayland, que é onde está o futuro.
O fim do Xorg é inevitável; os seus padrão já passam a não atender mais as necessidades de hoje em dia e foi pensando nisso que o Wayland foi criado. Ao longo do tempo o Wayland vem ganhando cada vez mais espaço; tanto Debian quanto o Red Hat Enterprise Linux 8 passaram a adotar o Wayland como servidor gráfico padrão em seu ultimo lançamento; agora temos a noticia que o Ubuntu Mate fez o mesmo. Não somente as distribuições mas também ambientes gráficos e os servidores gráficos estão passando adotá-lo como padrão assim como vemos o KDE Plasma 5.22, já não é novidade no Gnome, o KWin, o Elightenment e até o NetBSD estuda adicionar o seu suporte.
O Wayland é chamado o servidor gráfico do futuro pois ele oferece uma base muito mais limpa e mais fácil de se trabalhar tanto na adição de novos recursos quanto na parte de correção de bugs e até mesmo já apresenta resultado na melhoria do desempenho das interfaces gráficas.
Na Terça Feira, 8 de Junho de 2021 foi lançada a versão 5.22 KDE Plasma com suporte a Wayland por padrão (que também chamaram de o display protocol do futuro). O projeto afirma que ao utilizar o Wayland por traz dos bastidores, o Plasma é capaz de incluir recursos e corrigir bugs que não eram possíveis implementar no X11, oferecendo uma melhor experiência e mais estabilidade.
Essa é a minha visão que já mostrei em uma live que uma das coisas que é necessário para que Linux ganhe mais usuários é o fato de ter que melhorar as ferramentas de baixo nível. Isso não é importante para o usuário final, mas melhorando as ferramentas de baixo nível, os usuários acabam tendo as suas.
"Uma outra coisa que contribui para uma boa experiência em vídeo no Wayland é que o KWin pode agora configurar um valor de overscan da tela. Isso garante que nenhuma das imagens serão cortadas fora das bordas da tela e pode também ser utilizada para remover bordas pretas. Isso é útil se você quiser assistir um filme na TV por exemplo."
Fora manter recursos antigos como mostrar todas as janelas abertas quando clicar no canto superior esquerdo da tela e caso tiver mais de um monitor, novas janelas abrem aonde o cursos estiver localizado.. Conectar uma placa de vídeo externa agora é configurada pelo KWin on the fly e sem a necessidade de reiniciar o Plasma.
Eu queria ter contado esta experiencia aqui no blog; mas como ficou muito grande, então ficaria melhor em um vídeo. Eu já havia acompanhado o andamento do Wayland no canal do Renato no FastOS e Oficina do Tux e no Sir Rob Linux, mas também quis ampliar o assunto (quanto mais experiencias contadas, melhor) pois todos se encontram situações diferentes; e foi exatamente o que aconteceu.
Eu já havia visto o Renato realizar lives com o plugin do Wayland (sem a necessidade de recursos do X11), mas como havia incerteza se o plugin iria continuar existindo, resolvi abandonar a ideia. Mas graças a pessoas que assistiram ao vídeo, me informaram que o seu desenvolvimento está ativo. Caso queira experimentar, basta clicar nos links abaixo:
Terminado este artigo com duas noticias; já que eu falei que utilizei o driver de vídeo open source Nouveau, foi publicado no site Phoronix que o Nouveau receberá suporte a CRC Support Ready no lançamento do kernel Linux 5.9. E Aleix Pol publicou no Twitter que imergiram o KWin Wayland screen e streaming.
Weston é uma implementação do Wayland sendo um compositor minimo e rápido fornecendo um ambiente mínimo ou completo tanto para desktops quanto para ambientes embarcados, industriais, kiosks, set-top boxes e TVs. É possível rodar como um cliente X sob o KMS do Linux e com alguns demo clients.
Nessa nova versão do Weston o DRM deve ser utilizado com maior eficiência; seu backend agora possui suporte a HDCP, OpenGL e também podendo ser construído sem GBM; a redução de uso de memória devido o uso do recurso EGL_KHR_partial_update; uso de alguns GPUs em banda larga; melhorias no framework de Logging e a documentação do Weston agora pode ser construída.