Após quase três anos de desenvolvimento, foi lançado o servidor compositor Wayfire 0.8, que utiliza Wayland e permite a criação de interfaces de usuário que não exigem muitos recursos, com efeitos 3D no estilo dos plugins 3D do Compiz (transição de telas através de um cubo 3D, disposição espacial das janelas, morphing ao trabalhar com janelas, etc.). Wayfire suporta extensões por meio de plugins e oferece um sistema de configuração flexível. O código do projeto é escrito em C++ e é distribuído sob a licença MIT.
O projeto é construído sobre a biblioteca wlroots, desenvolvida pelos criadores do ambiente de desktop Sway, que fornece funções básicas para organizar o trabalho de um gerenciador compositor baseado em Wayland. Para gerenciar sessões, podem ser utilizados systemd, elogind ou seatd. O lançamento de aplicativos X11 é suportado através do XWayland. Como painel, pode-se usar o wf-shell dos desenvolvedores do Wayfire ou um painel de terceiros, como o LavaLauncher. O projeto também desenvolve uma biblioteca para trabalhar com arquivos de configuração wf-config e um configurador gráfico wcm.
Na nova versão:
- Adicionado o plugin "wsets" (Conjuntos de Espaços de Trabalho), permitindo trabalhar com coleções para áreas de trabalho virtuais. Em uma coleção, é possível agrupar áreas de trabalho relacionadas a um determinado tema (por exemplo, trabalho em um projeto principal, trabalho em um projeto pessoal, entretenimento) para visualizá-las simultaneamente na tela. O usuário pode a qualquer momento alternar para outra coleção e obter um novo conjunto de áreas de trabalho virtuais. Em cada tela, pode ser exibida sua própria coleção de áreas de trabalho (por exemplo, em um monitor externo pode-se usar a coleção de entretenimento, enquanto na tela interna do notebook — a coleção de trabalho). A movimentação de coleções entre telas é suportada.

- Foi disponibilizada a possibilidade de controlar o gerenciador compositor através de comandos IPC, transmitidos por meio de um socket de rede. A funcionalidade é implementada por meio do plugin ipc e plugins adicionais para o processamento dos comandos, por exemplo, o plugin ipc-rules inclui comandos básicos para gerenciar janelas. No futuro, está previsto adicionar suporte a comandos e eventos adicionais.
- Adicionada a capacidade de navegação entre áreas de trabalho virtuais utilizando o teclado.
- No plugin simple-tile, foram implementados efeitos animados.
- O plugin Vswitch agora inclui vinculações para mover elementos a desktops virtuais específicos.
- As implementações dos protocolos Wayland foram transferidas do conjunto básico para plugins separados: wayfire-shell, foreign-toplevel e gtk-shell.
- Foi adicionada suporte ao protocolo Wayland 'xdg-activation', que permite transferir o foco entre diferentes superfícies de nível superior (por exemplo, com o xdg-activation, um aplicativo pode transferir o foco para outro).
- Foram propostos novos widgets para o painel, incluindo um tray do sistema, notificações e um diálogo de desligamento. Também foi adicionado o widget Command-output, que permite exibir no painel os resultados da execução de comandos arbitrários.
- O painel wf-shell, a biblioteca wf-config e o configurador wcm foram atualizados.

- A API para criação de plugins foi expandida e reformulada. Por um lado, isso quebrou a compatibilidade com muitos plugins antigos, mas por outro lado, resolveu a maioria dos problemas que anteriormente interferiam no funcionamento. Para trabalhar com listas de telas, camadas e visualizações, foi proposta uma nova estrutura scenegraph. A interface de programação View, responsável pela apresentação das janelas dos aplicativos, foi reformulada. Um sistema de transações foi adicionado, permitindo atualizar automaticamente várias superfícies de nível superior e suas propriedades ao mesmo tempo, além de sincronizar o estado da decoração das janelas com a janela principal.
Fonte: opennet.ru


