System76, uma empresa que desenvolve LinuxA distribuição Pop!_OS publicou um relatório de progresso sobre uma nova versão de seu ambiente de usuário COSMIC, reescrito em Rust (não confundir com o COSMIC antigo, que era baseado no GNOME Shell). O ambiente está sendo desenvolvido como um projeto de propósito geral, não vinculado a uma distribuição específica e compatível com as especificações do Freedesktop. O projeto também está desenvolvendo um servidor composto baseado em Wayland, o cosmic-comp.
O COSMIC utiliza a biblioteca Iced para sua interface, que emprega um design com tipagem estática, uma arquitetura modular e um modelo de programação reativa, oferecendo uma arquitetura familiar para desenvolvedores familiarizados com a linguagem de interface declarativa Elm. Ele fornece múltiplos mecanismos de renderização que suportam Vulkan, Metal, DX12, OpenGL 2.1+ e OpenGL ES 2.0+, bem como um framework de janelas e um mecanismo de integração web. Aplicações baseadas em Iced podem ser construídas para Windows, macOS, Linux e executar em um navegador web. Os desenvolvedores têm à disposição um conjunto de widgets prontos para uso, a capacidade de criar manipuladores assíncronos e um layout adaptável dos elementos da interface com base no tamanho da janela e da tela. O código é distribuído sob a licença MIT.

Entre as últimas conquistas no desenvolvimento do COSMIC:
- Foi proposto um novo painel que exibe uma lista de janelas ativas, atalhos para acesso rápido a aplicativos e suporta a colocação de applets (aplicativos embutidos que rodam em processos separados). Por exemplo, os applets implementam o menu do aplicativo, a interface para alternar entre as áreas de trabalho e os indicadores para alterar o layout do teclado, controlar a reprodução de arquivos multimídia, alterar o volume, controlar Wi-Fi e Bluetooth, mostrar a saída de uma lista de notificações acumuladas, exibir a hora e chamar a tela para desligar. Está prevista a implementação de applets com previsão do tempo, notas, gerenciamento de área de transferência e implementação de menus de usuário.

O painel pode ser dividido em partes, por exemplo, a superior com menus e indicadores, e a inferior com uma lista de tarefas ativas e atalhos. Partes do painel podem ser colocadas verticalmente e horizontalmente, ocupar toda a largura da tela ou apenas a área selecionada, usar transparência, alterar o estilo dependendo da escolha do design claro e escuro.

- O System76 Scheduler 2.0, um serviço de otimização automática, foi lançado. Ele ajusta dinamicamente os parâmetros do agendador de tarefas CFS (Completely Fair Scheduler) e altera as prioridades de execução dos processos para reduzir a latência e garantir o máximo desempenho do processo associado à janela ativa com a qual o usuário está trabalhando. A nova versão apresenta integração com multimídia. servidor O Pipewire aumenta a prioridade dos processos que geram conteúdo multimídia; houve a transição para um novo formato de arquivo de configuração, no qual é possível definir regras personalizadas e controlar a aplicação de diversos modos de otimização; foi implementada a capacidade de aplicar configurações com base no estado dos cgroups e dos processos pai; o consumo de recursos no processo principal do Scheduler foi reduzido em aproximadamente 75%.
- Uma implementação do configurador preparada usando a nova biblioteca de widgets está disponível. A primeira versão do configurador oferece configurações para painel, teclado e papel de parede da área de trabalho. No futuro, o número de páginas com configurações será aumentado. O configurador possui uma arquitetura modular que permite conectar facilmente páginas adicionais com configurações.

- Estão em curso os preparativos para integrar o suporte a monitores de alto alcance dinâmico (HDR) e ferramentas de gerenciamento de cores (por exemplo, está previsto o suporte a perfis de cores ICC). O desenvolvimento ainda está em fase inicial e está sendo sincronizado com o trabalho geral para fornecer suporte a HDR e ferramentas de gerenciamento de cores para [nome da plataforma/plataforma]. Linux.
- Em compósito servidor O cosmic-comp adicionou suporte para saída com representação de cores de 10 bits por canal.
- A biblioteca GUI iced está trabalhando em ferramentas de suporte para pessoas com deficiência. A integração experimental com a biblioteca AccessKit foi realizada e a capacidade de usar leitores de tela Orca foi adicionada.
Fonte: opennet.ru



