A empresa System76, que desenvolve a distribuição Linux Pop!_OS, apresentou a quinta versão alfa do ambiente de desktop COSMIC, escrita em Rust (não confundir com o antigo COSMIC, que era baseado no GNOME Shell). Foram disponibilizadas imagens ISO para teste com a nova versão do COSMIC, criadas sobre as compilações alfa do próximo lançamento da distribuição Pop!_OS 24.04 para sistemas com GPU NVIDIA (2,9 GB) e Intel/AMD (2,5 GB). Pacotes prontos também estão sendo preparados para Fedora, NixOS, Arch Linux, openSUSE, Serpent OS, Redox e CachyOS.
O COSMIC está se desenvolvendo como um projeto versátil, desvinculado de uma distribuição específica e alinhado às especificações do Freedesktop. Para construir a interface, o COSMIC utiliza a biblioteca Iced, que emprega tipos seguros, arquitetura modular e um modelo de programação reativa, além de oferecer uma arquitetura familiar para desenvolvedores que conhecem a linguagem de construção de interfaces declarativas Elm. Vários motores de renderização são fornecidos, suportando Vulkan, Metal, DX12, OpenGL 2.1+ e OpenGL ES 2.0+. Os desenvolvedores têm acesso a um conjunto pronto de widgets, a capacidade de criar manipuladores assíncronos e usar layout adaptável de elementos da interface com base no tamanho da janela e da tela.
Além do uso da linguagem Rust, destacam-se no COSMIC os modos de composição híbrida em mosaico de janelas e fixação em pilha de janelas (agrupamento de janelas similar a abas em navegadores), que podem ser ativados em relação a áreas de trabalho virtuais. O projeto também desenvolve o compositor servidor cosmic-comp baseado em Wayland. O primeiro lançamento estável do COSMIC está agendado para o primeiro trimestre de 2025.
Principais mudanças em relação à quarta versão alfa do COSMIC:
- Por padrão, está ativo o reprodutor de mídia COSMIC Media Player, que utiliza a API gráfica Vulkan para renderização e VAAPI para decodificação de vídeo. Também está em desenvolvimento um aplicativo separado para a instalação de codecs, que futuramente substituirá o sessioninstaller.


- Foi adicionada uma página no configurador para gerenciar contas de usuários, onde é possível alterar os parâmetros da própria conta. Usuários com direitos de administrador podem adicionar novos usuários, modificar dados de usuários existentes e delegar a capacidade de realizar operações privilegiadas para outros usuários.

- O widget ContextDrawer agora suporta a colocação de botões no cabeçalho. Por exemplo, no gerenciador de arquivos, na barra lateral direita com informações adicionais sobre o arquivo, implementada com o ContextDrawer, foram adicionados os botões "<" , ">" e "[]" para navegação entre o arquivo anterior e o próximo, além de abrir um arquivo em um aplicativo separado.

- No gerenciador de arquivos, foi implementada a possibilidade de salvar novos arquivos em um novo diretório. Adicionada a funcionalidade de renomear arquivos nos resultados da pesquisa. No menu de contexto exibido na seção de arquivos recentemente abertos, foi adicionada a opção para visualizar o diretório onde o arquivo selecionado está armazenado.
- Na interface de alternância entre janelas ativas, acessada através do Alt+Tab, a ordem de exibição das janelas dos aplicativos agora corresponde à ordem de uso do usuário com os aplicativos (a janela com a qual o usuário trabalhou por último será exibida primeiro, e a que não foi acessada por mais tempo será exibida por último). Para rolar na ordem inversa, pode-se usar a combinação Alt + Shift + Tab.
- Foi ampliado o suporte ao mecanismo VRR (Variable Refresh Rate), que permite alterar adaptativamente a taxa de atualização do monitor para garantir fluidez e ausência de interrupções durante jogos e exibição de vídeos. Ao usar o VRR, agora considera-se a taxa mínima de atualização da tela, o que garante um movimento fluido do cursor, mesmo que o aplicativo utilize uma taxa menor durante a exibição. A mudança é principalmente notável ao abrir aplicativos não relacionados a jogos em modo de tela cheia.
- Adicionada a possibilidade de abrir links do emulador de terminal com um clique do botão esquerdo do mouse no URL.


Fonte: opennet.ru




