A Canonical felfedte a Snapcraft eszközkészlet jelentős átdolgozásának terveit, amelyet az önálló Snap csomagok létrehozására, terjesztésére és frissítésére használnak. Megjegyzik, hogy a jelenlegi Snapcraft kódalap elavultnak számít, és csak akkor alkalmazzák, ha régi technológiák használatára van szükség. A tervezett radikális változások nem befolyásolják a meglévő használati modellt — az Ubuntu Core 18 és 20 projektekben továbbra is a régi monolitikus Snapcraft fog használatban lenni, míg az új moduláris Snapcraft az Ubuntu Core 22 ágatól kezdődően lép életbe.
Az új, kompaktabb és moduláris Snapcraft váltja le a régit, amely megkönnyíti a fejlesztők számára a snap-csomagok létrehozását, és megszünteti a különböző disztrokat támogató hordozható csomagok készítésével kapcsolatos nehézségeket. Az új Snapcraft alapja a Craft Parts mechanizmus, amely lehetővé teszi a csomagok során az adatok különböző forrásokból történő beszerzését, a különböző módon történő feldolgozását és a fájlrendszerben a csomagok telepítésére alkalmas könyvtárhierarchia létrehozását. A Craft Parts a projektben hordozható összetevők használatát jelenti, amelyek egymástól függetlenül tölthetők le, építhetők és telepíthetők.
Az új vagy régi Snapcraft megvalósításának kiválasztása egy speciális fallback mechanizmus révén történik, amely beépített a build folyamatába. Ennek köszönhetően a meglévő projektek változtatások nélkül tudják létrehozni a snap-csomagokat, és módosításokra csak a későbbi verzióra való átálláskor lesz szükség az Ubuntu Core rendszeren.
Forrás: opennet.ru
