Das Unternehmen Canonical hat Pläne für eine umfassende Überarbeitung des Snapcraft-Tools bekannt gegeben, das zur Erstellung, Verteilung und Aktualisierung von eigenständigen Paketen im Snap-Format verwendet wird. Es wird darauf hingewiesen, dass der aktuelle Code von Snapcraft als veraltet (legacy) betrachtet wird und nur bei Bedarf zur Verwendung alter Technologien eingesetzt wird. Die entwickelten radikalen Änderungen werden sich nicht auf das bestehende Nutzungsmodell auswirken – in Projekten, die mit Ubuntu Core 18 und 20 verbunden sind, wird weiterhin das alte monolithische Snapcraft verwendet, während das neue modulare Snapcraft ab der Ubuntu Core 22-Version zum Einsatz kommt.
An die Stelle des alten Snapcraft tritt eine neue, kompaktere und modularere Variante, die die Erstellung von Snap-Paketen für Entwickler vereinfachen und Schwierigkeiten bei der Erstellung portabler Pakete beseitigen wird, die in verschiedenen Distributionen einsatzfähig sind. Die Grundlage für das neue Snapcraft bildet der Mechanismus Craft Parts, der es ermöglicht, während des Paketbaus Daten aus verschiedenen Quellen zu beziehen, sie auf unterschiedliche Weise zu verarbeiten und eine Verzeichnisstruktur im Dateisystem zu erstellen, die für die Bereitstellung von Paketen geeignet ist. Craft Parts impliziert die Verwendung portierbarer Komponenten im Projekt, die unabhängig voneinander heruntergeladen, gebaut und installiert werden können.
Die Wahl zwischen der neuen oder alten Implementierung von Snapcraft wird über einen speziellen Fallback-Mechanismus erfolgen, der in den Build-Prozess integriert ist. So können bestehende Projekte Snap-Pakete ohne Änderungen erstellen und erfordern nur Anpassungen, wenn die Pakete auf die neue Ubuntu Core-Version migriert werden.
Quelle: opennet.ru
