O que há de novo para desenvolvedores e administradores de sistema

GNOME 3.24 inclui vários novos recursos e melhorias para aqueles que estão trabalhando com tecnologias do GNOME. Continue lendo para mais detalhes!

Builder

Builder teve um progresso significativo para 3.24, com vários novos recursos relevantes. Isso inclui suporte melhorado a vários sistemas de compilação, incluindo Flatpak, CMake, Meson e Rust. Isso foi possível graças a uma arquitetura de pipeline de compilação, que permite oferecer suporte a diferentes sistemas de compilação com mais facilidade.

Clicar em alguns botões é tudo que é necessário para configurar um ambiente de configuração no 3.24, graças à habilidade de instalar e atualizar SDKs e cadeias de ferramentas diretamente do Builder (seja com Flatpak ou Rust).

Integração com Valgrind facilita perfilar seu projeto. Se Valgrind estiver disponível (como ele sempre está com uma SDK do Flatpak), ele é disponibilizado a partir do menu de execução – basta selecioná-lo para executar seu projeto com ele.

O suporte ao Flatpak teve uma quantidade significativa de polimentos desde o último lançamento, tornando-o bem mais confiável e integrado. Isso significa que agora é possível clonar e compilar perfeitamente muitos aplicativos GNOME usando o Flatpak, tudo dentro do Builder. Isso é uma grande avanço para a experiência de desenvolvimento do GNOME, e evita a necessidade de compilar uma cadeia frágil de dependências para contribuir.

Flatpak

Enquanto o Flatpak é um projeto independente do GNOME, o GNOME está ativamente promovendo seu uso como uma parte de sua experiência de desenvolvimento. Desde o lançamento do 3.22, Flatpak teve um progresso significativo. Desde então, houve um total de oito lançamentos do Flatpak, que introduziu uma série de novos recursos e aprimoramentos.

  • Os aplicativos agora podem especificar de onde seus runtime podem ser baixados. Isso permite ao Flatpak baixar automaticamente o runtime necessário para um aplicativo, se ele não estiver instalado.

  • Uma nova série de estáveis, 0.8.0, foi introduzida, o que fornece uma caminho para distribuições de suporte a longo prazo incluírem Flatpak.

  • A interface de linha de comando foi retrabalhada e melhorada.

  • Flatpak agora oferece suporte a baixar URIs como parte da instalação de aplicativo. Isso permite que haja suporte a aplicativos como Spotify e Skype.

  • O suporte ao driver OpenGL permite que aplicativos usem drivers proprietários, se eles já estiverem instalados no sistema hospedeiro.

  • O suporte ao padrão OCI foi atualizado para a última versão e suporte foi adicionado para instalar aplicativos Flatpak diretamente de imagens OCI.

Além disso, houve um grande número de correções de erros menores e aprimoramentos. A página de lançamentos do Flatpak fornece mais detalhes.

Progresso em direção ao GTK+ 4

O desenvolvimento do GTK+ teve foco no próximo lançamento maior do GTK+, o GTK+ 4. Esse ramo de desenvolvimento ainda não está pronto para usar. Porém, novos recursos começaram a ser entregues, incluindo um recurso de gravação no Inspetor de GTK+ e suporte à especificação de filtro de CSS. Outras alterações incluem limpeza de APIs obsoletas e criação de um novo renderizador de Vulkan.

O ramo estável do 3.22 continuou a receber correções de erros neste ciclo de desenvolvimento. Essas podem ser localizadas no lançamento do GTK+ 3.22.10, o qual forma parte do GNOME 3.24.

Outras mudanças

Outras mudanças para desenvolvedores no GNOME 3.24 incluem:

  • gspell, a biblioteca de verificação ortográfica para o GTK+, agora oferece suporte à verificação ortográfica em widgets GtkEntry. Esse trabalho foi patrocinado por uma arrecadação de fundos bem sucedida pelo desenvolvedor do gspell Sébastien Wilmet. Obrigado a todos que patrocinaram esse esforço!

  • Aprimoramento do desempenho de redução de imagens no GdkPixbuf, graças a um erro antigo ter sido resolvido.

  • Várias questões de segurança em potenciais foram eliminadas no GdkPixbuf.

  • GJS foi atualizado para usar SpiderMonkey 38. Ele fornece uma implementação de JavaScript mais moderna com diversos recursos ES6. Destaques incluem promessas, iteradores, símbolos, strings modelo, geradores, sintaxe de abreviação de método, muitos novos métodos de biblioteca padrão. Veja o arquivo de notícia do GJS para mais detalhes.

  • libgd é uma biblioteca conveniente que fornece um conjunto de widgets de modelo composto que pode ser usado para compilar aplicativos. Para o 3.24, o modelo “visão de conteúdo”, que apresenta uma grade de itens, foi atualizado para usar GtkFlowBox em vez de GtkIconView. Isso entrega um redimensionamento dinâmico de itens para garantir layouts de grade iguais e uso eficiente do espaço.

  • Além de permitir que você cozinhe receitas deliciosas de seus hackers do GNOME favoritos, o novo aplicativo Receitas serve como um exemplo útil de aplicativo flatpak que funciona completamente em sandbox usando portals.