Nova versão

RPM 4.20 simplifica instalação de software no RHEL e Fedora com novos recursos

O RPM 4.20 traz grandes inovações como suporte a sistema de build declarativo, API pública de plug-ins e melhorias no manuseio de arquivos SPEC, otimizando o gerenciamento de pacotes para distribuições Linux.

Fedora pode descartar RPMs Delta
rpm logo

O RPM 4.20 foi lançado como a nova versão deste sistema de gerenciamento de pacotes, amplamente utilizado em distribuições baseadas em RHEL e Fedora. Após um ano de desenvolvimento, a nova versão traz uma série de melhorias e novos recursos para otimizar o gerenciamento de pacotes.

Entre as novidades mais importantes estão o suporte a um sistema de build declarativo, que automatiza processos anteriormente manuais, e uma API de plug-ins agora pública, que promete facilitar a criação de novas funcionalidades e a integração com outros sistemas. O lançamento também inclui suporte aprimorado para arquivos debuginfo independentes da distribuição, melhorias no manuseio de arquivos SPEC dinâmicos e diretórios controlados pelo RPM em cada build.

Principais melhorias do RPM 4.20

  • Suporte ao sistema de build declarativo: Com essa função, os pacotes podem declarar o sistema de build utilizado, como Autotools ou CMake, e o RPM automaticamente realiza os processos de preparação, compilação e instalação. Isso reduz o código repetitivo, mas ainda permite que os empacotadores façam ajustes, conforme necessário.
  • Diretórios de build controlados pelo RPM: Agora, o RPM garante que cada build utilize um diretório específico, o que aumenta a confiabilidade e organização no processo de compilação.
  • Suporte agnóstico para debuginfo: Esta nova funcionalidade permite que pacotes gerem informações de depuração de maneira eficiente e consistente, sem a necessidade de ajustes específicos por parte das distribuições.
  • API pública de plug-ins: A API de plug-ins, que agora está disponível publicamente, permite a criação de extensões e integrações mais simples com o RPM, expandindo suas funcionalidades.
  • Melhorias no manuseio de arquivos SPEC: O novo RPM aprimora o suporte a atributos de arquivos locais em arquivos SPEC, além de melhorar a formatação e a legibilidade desses arquivos.
  • Sanitização do modo de build-in-place: Agora, o modo de build-in-place tem uma semântica mais clara e direta, o que facilita seu uso para empacotadores.

Além dessas mudanças, o RPM 4.20 introduz novos plug-ins, como o unshare, que isola scripts em diferentes namespaces de Linux, e várias correções de bugs para melhorar a estabilidade e a segurança do sistema. Entre as novas funcionalidades para os usuários, destacam-se a possibilidade de listar e excluir chaves com o comando rpmkeys e suporte para assinar pacotes com chaves ECDSA no rpmsign.

Detalhes técnicos e melhorias na construção de pacotes

O novo sistema de build declarativo traz uma grande simplificação para os empacotadores. Com o uso da diretiva BuildSystem, os pacotes agora podem declarar explicitamente qual sistema de build será utilizado. Dessa forma, o RPM é capaz de configurar automaticamente a preparação, compilação e instalação dos pacotes conforme as práticas recomendadas para cada sistema. Isso elimina a necessidade de escrever manualmente scriptlets como %prep, %build ou %install, economizando tempo e reduzindo erros comuns.

Além disso, o suporte a modificações dinâmicas nos arquivos SPEC foi expandido, permitindo adicionar ou remover seções sem influenciar diretamente o processo de build. O RPM também introduziu a opção de reexecução de scriptlets, permitindo ajustes adicionais ao longo do processo de empacotamento.

Conclusão

O RPM 4.20 representa um grande passo à frente para o gerenciamento de pacotes em distribuições Linux. Com melhorias significativas que tornam o sistema mais automatizado, flexível e robusto, essa atualização é especialmente valiosa para desenvolvedores e mantenedores de distribuições baseadas em Fedora e RHEL. O suporte ao sistema de build declarativo e a abertura da API de plug-ins colocam o RPM em uma posição de destaque entre os sistemas de gerenciamento de pacotes, oferecendo maior controle e personalização ao processo de empacotamento.