01
Fade.
Transições suaves ao abrir e fechar janelas, mesmo quando a animação é interrompida.
Beta · v0.3.0-beta.2
Conheça o Compust: um compositor minimalista tomando forma em Rust. Animações, desfoque e transparência para a sua sessão Xorg ou XLibre.
01
Transições suaves ao abrir e fechar janelas, mesmo quando a animação é interrompida.
02
Desfoque atrás de janelas translúcidas, reduzido e ampliado com amostragem bilinear do XRender.
03
O canal alfa da aplicação, a opacidade da janela e a configuração global combinados.
04
Cantos de janela arredondados, com as sombras e o desfoque que os acompanham, definidos globalmente ou por janela.
01 / A ideia
O servidor X cuida da exibição. O gerenciador de janelas organiza as janelas. O Compust adiciona a camada visual final, com uma base de código pequena que as pessoas possam entender e aprimorar.
Inspirado no picom e na tradição dos compositores X11 independentes, o Compust explora uma implementação acessível em Rust. Confiabilidade, uso de recursos e cadência dos quadros são melhorias a medir conforme o projeto evolui.
X11 primeiro. Voltado a Xorg e XLibre; Wayland nativo está fora do escopo atual.
A versão 0.3.0-beta.2 traz sombras, cantos arredondados, suspensão da composição em tela cheia, regras pelo foco e recarga quando a configuração é salva. Até agora, um desktop registrado rodou o seu código, no Xorg com i3. O marco 1.0 lista o que ainda falta para uma versão estável.
Leia o marco 1.002 / Progresso
Concluído
Composição com XRender, fades, transparência e desfoque, conferidos por testes de pixels em um servidor X real.
Publicada
Quatro critérios cumpridos para o escopo declarado: estabilidade das janelas, monitores, desktops reais e distribuição. Publicada como 0.2.0-beta.1 a beta.3.
Na 0.3.0-beta.1
Descoberta da configuração, recarga sem reiniciar, regras por janela e desfoque ponderado pela opacidade.
Na 0.3.0-beta.1
Cenas de benchmark do Compust, repintura por regiões, reaproveitamento do desfoque e oclusão, medidos em um desktop.
Opcional na 0.3.0-beta.1
OpenGL ES por DRI3, igual ao XRender com diferença de até dois níveis de cor em um desktop registrado. O XRender continua como padrão.
Na 0.3.0-beta.2
Cantos de janela arredondados com suas sombras e o desfoque atrás delas, nos dois renderizadores, registrados em uma tela.
Marco atual
Seus recursos estão na 0.3.0-beta.2: sombras, suspensão da composição em tela cheia e regras pelo foco. Ainda faltam: NVIDIA e mais desktops, testes de uso prolongado e testadores externos.
03 / Ambientes testados
AMD · XLibre e Xorg
Xmonad no XLibre, em um e dois monitores: cenários de desktop com fades, translucidez e desfoque, mudanças de monitores e os dois cabos desconectados e reconectados. i3 no Xorg: cenários de desktop, e sombras, foco e suspensão em tela cheia nos dois renderizadores.
Intel · Xorg
Xmonad, Openbox e i3. Cenários de desktop, um monitor externo desconectado e reconectado e suspensão e retomada.
AMD · XLibre
Xmonad, Openbox, i3, bspwm e dwm. Cenários de desktop com a 0.3.0-beta.1, recargas de configuração, cenas de benchmark do Compust e o renderizador de GPU.
Cada push também roda 132 testes X11 no Xvfb. A maioria das sessões em hardware usa janelas sintéticas de teste, e o laptop Intel e as sessões XLibre do desktop com Radeon Vega foram registrados com as betas 0.2.0, antes do trabalho de renderização. Drivers NVIDIA e outros gerenciadores de janelas não foram testados. Veja cada registro na matriz de compatibilidade.
04 / Documentação
Requisitos, instalação, configuração e limitações atuais.
Instale a beta, volte ao compositor anterior e relate problemas.
Acompanhe uma janela, do evento X11 ao quadro final.
Os critérios da beta, o progresso registrado e o marco 1.0.
Prepare o ambiente, execute os testes e envie um pull request.
Teste um driver, relate um problema de renderização, melhore uma tradução ou trabalhe no renderizador. Contribuições em português brasileiro e inglês são bem-vindas.