Canonical hat Pläne für eine bevorstehende umfassende Überarbeitung des Snapcraft-Toolsets veröffentlicht, das zur Erstellung, Verbreitung und Aktualisierung von eigenständigen Snap-Paketen verwendet wird. Es wird darauf hingewiesen, dass der aktuelle Code von Snapcraft als veraltet (legacy) anerkannt ist und nur bei Bedarf für alte Technologien eingesetzt wird. Die angestrebten radikalen Änderungen wird die aktuelle Nutzungsweise nicht beeinflussen – 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 Version Ubuntu Core 22 zum Einsatz kommen wird.
Der alte Snapcraft wird durch eine neue, kompaktere und modularere Version ersetzt, die die Erstellung von Snap-Paketen für Entwickler erleichtert und die Schwierigkeiten beim Erstellen tragbarer Pakete beseitigt, die in verschiedenen Distributionen funktionieren. Die Grundlage für das neue Snapcraft bildet der Craft Parts-Mechanismus, der es ermöglicht, beim Erstellen von Paketen Daten aus unterschiedlichen Quellen zu beziehen, diese auf verschiedene Arten zu verarbeiten und eine Verzeichnisstruktur im Dateisystem zu formen, die für die Bereitstellung der Pakete geeignet ist. Craft Parts bedeutet die Verwendung tragbarer Komponenten im Projekt, die unabhängig voneinander heruntergeladen, zusammengebaut und installiert werden können.
Die Auswahl zwischen der neuen oder der alten Snapcraft-Implementierung erfolgt über einen speziellen Rückfallmechanismus, der in den Build-Prozess integriert ist. Auf diese Weise können bestehende Projekte Snap-Pakete ohne Änderungen erstellen, und eine Modifikation ist nur erforderlich, wenn Pakete auf die neue Version der Ubuntu Core-Basis umgestellt werden.
Quelle: opennet.ru
