Ambiente de usuário COSMIC desenvolve novo painel escrito em Rust

A System76, que desenvolve a distribuição Linux Pop!_OS, publicou um relatório sobre o desenvolvimento de uma nova edição do ambiente de usuário COSMIC, reescrito em Rust (não confundir com o antigo COSMIC, baseado no GNOME Shell). O ambiente é desenvolvido como um projeto universal que não está vinculado a uma distribuição específica e está em conformidade com as especificações do Freedesktop. O projeto também desenvolve o servidor composto cosmic-comp baseado em Wayland.

Para construir uma interface, COSMIC usa a biblioteca Iced, que usa tipos seguros, uma arquitetura modular e um modelo de programação reativa, e também oferece uma arquitetura familiar para desenvolvedores familiarizados com a linguagem de construção de interface declarativa Elm. Vários mecanismos de renderização são fornecidos com suporte a Vulkan, Metal, DX12, OpenGL 2.1+ e OpenGL ES 2.0+, bem como um shell de janela e um mecanismo de integração da web. Os aplicativos baseados no Iced podem ser criados para Windows, macOS, Linux e executados em um navegador da web. Os desenvolvedores recebem um conjunto pronto de widgets, a capacidade de criar manipuladores assíncronos e usar o layout adaptável dos elementos da interface, dependendo do tamanho da janela e da tela. O código é distribuído sob a licença MIT.

Ambiente de usuário COSMIC desenvolve novo painel escrito em Rust

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.
    Ambiente de usuário COSMIC desenvolve novo painel escrito em Rust

    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.

    Ambiente de usuário COSMIC desenvolve novo painel escrito em Rust

  • Foi publicado o serviço de otimização automática System76 Scheduler 2.0, que configura dinamicamente os parâmetros do agendador de tarefas CFS (Completely Fair Scheduler) e altera as prioridades de execução do processo para reduzir a latência e garantir o máximo desempenho do processo associado à janela ativa que o usuário está trabalhando no momento. A nova versão integra-se ao servidor de mídia Pipewire para aumentar a prioridade dos processos que exibem conteúdo multimídia; foi feita uma transição para um novo formato de arquivos de configuração, no qual você pode definir suas próprias regras e controlar o uso de vários modos de otimização; a capacidade de aplicar configurações com base no estado de cgroups e processos pai; redução de aproximadamente 75% no consumo de recursos no processo principal do Scheduler.
  • 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.
    Ambiente de usuário COSMIC desenvolve novo painel escrito em Rust
  • Os preparativos estão em andamento para integrar o suporte para telas de alta faixa dinâmica (HDR) e controles de cores (por exemplo, está planejado adicionar suporte para perfis de cores ICC). O desenvolvimento ainda está em sua infância e está em sincronia com o trabalho geral para fornecer suporte HDR e ferramentas de gerenciamento de cores para Linux.
  • Adicionado suporte para saída com representação de cor de 10 bits por canal para o servidor composto cosmic-comp.
  • 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

Adicionar um comentário