A Canonical parece ter sentido o peso da concorrência com o Flatpak e já desenvolve grandes mudanças para sua própria forma de empacotamento de aplicativos Snapcraft. Quem confirma isso é o próprio blog da empresa sobre a distribuição Ubuntu Linux que acaba de publicar um artigo chamado “O Futuro do Snapcraft”. Eles vão revisar toda a arquitetura do Snapcraft sem necessariamente se afastar de sua própria tecnologia de empacotamento, armazenamento e atualização de aplicativos.
A Canonical vai tornar a base de código Snapcraft um “legado”. Isso ocorrerá enquanto trabalha seu código mais recente. A promessa é criar uma arquitetura nova e mais modular. No momento, encontra-se em um estágio inicial.
A primeira prova de conceito cobre apenas alguns aspectos da funcionalidade do Snapcraft, mas ilustra uma conversão relativamente rápida para o novo design modular. No entanto, ainda existem alguns desafios técnicos que precisam ser resolvidos, incluindo validação de dados em um nível global, processamento de gramática, extensões, adoção de informações de parte, adoção de informações do Appstream, reimplementação de plug-ins específicos do Snapcraft como plug-ins de aplicativos para artesanato partes ou patch de arquivo binário.
Em seguida, há também a implementação de processamento de argumento de linha de comando usando craft-cli, novas interações Store e funcionalidade de compilação remota, além de tornar a experiência do usuário de linha de comando mais limpa e consistente.
Canonical desenvolve grandes mudanças para o Snapcraft
Ao que parece, haverá muitos novos códigos escritos para melhorar a arquitetura do Snapcraft. Pela postagem, isso parece ser o que está na agenda para 2022. Embora seja uma mudança radical, eles não esperam interromper o atual modelo de uso do Snapcraft. Assim, todos os projetos que dependem do core18/core20 devem continuar funcionando normalmente com o agora Snapcraft “legado”. Assim, quando estiverem prontos, podem fazer a transição para a nova base de código.
É importante observar que essa mudança (um tanto) radical não interromperá o modelo de uso atual. Projetos com core18 e core20 continuarão usando Snapcraft monolítico, enquanto o novo Snapcraft modular será usado para core22 e posteriores. Um mecanismo de fallback será colocado para decidir qual implementação é necessária no processo de construção. Assim, os milhares de projetos que felizmente usam o Snapcraft podem continuar funcionando, e só serão afetados se e quando mudarem para a nova base.
A postagem curta no blog de hoje conclui com:
Ir ousadamente aonde ninguém jamais foi. Isso é válido tanto para espaçonaves quanto para Snapcraft. Daqui para frente, você deve esperar ver alguns desenvolvimentos novos e interessantes no produto, todos direcionados em tornar as coisas mais simples, rápidas, robustas e sem afetar adversamente a experiência do usuário.