Canonical обяви преработката на Snapcraft 

Canonical представен наскоро имаш планове за следващ основна ревизия на инструментариума Snapcraft, който се използва за генериране, разпространение и актуализиране на популярния формат на пакет Snap.

Трябва да се отбележи, че текущата кодова база на Snapcraft е обявено за наследено и ще се прилага при необходимост използват стари технологии.

В рекламата си той споменава това от драстичните промени които се планират да бъдат изпълнени и от които някои от тях са вече в ход няма да засегне текущия модел на използване, тъй като проекти, свързани с Ubuntu Core 18 и 20, ще продължат да използват стария монолитен модел Snapcraft.

В допълнение към това те споменават, че новият модулен модел Snapcraft е планирал да започне да се прилага от клона на Ubuntu Core 22.

В действителност нещата са по-сложни и са склонни да стават все по-сложни с течение на времето. През последните шест години екипът на Snapcraft работи, за да направи основния си продукт модулен, ефективен и полезен за разработчиците на Snap, разширявайки неговата функционалност и въвеждайки нови възможности с течение на времето. В известен смисъл това е завършен продукт и служи добре на предназначението си. Но има начини да направите нещата още по-добри. Тази статия разглежда бъдещето на Snapcraft.

Що се отнася до причините, поради които е предназначен да замени стария Snapcraft, това е защото se иска да предложи нова, по-компактна и модулна опция което ще улесни разработчиците при създаването на Snap пакети, добавяйки към това, че те също така искат да премахнат веднъж завинаги неприятностите при създаването на преносими пакети, които работят във всички дистрибуции.

В основата на новия Snapcraft е механизмът Craft Parts, споменава се, че освен че позволява сглобяването на пакети, той също така ще може да получава данни от различни източници, да ги обработва по различни начини и да формира йерархия от директории в FS, подходящ за изпълнение на пакети.

Craft Parts включва използването на преносими компоненти в проекта, които могат да бъдат изтеглени, сглобени и инсталирани независимо.

Основната концепция се върти около разделянето на Snapcraft на по-малки, още по-модулни и многократно използвани компоненти, които могат да се използват в редица различни продукти. Общото за това усилие е набор от Craft Libraries, както вече обсъдихме в публикацията в блога Craft Parts. Теорията изисква използването на генеричен генератор на части, базиран на доставчици на занаятчийски и занаятчийски части, с добавената функционалност на Snapcraft като отделен слой. Единственият въпрос е каква е въздушната скорост на лястовица? Колко трудно би било да се проектира и приложи това?

Точно преди празничния сезон екипът на Snapcraft се зае да отговори точно на този въпрос и да проучи степента на модулност в техния подход.

Избор на нова реализация или стария Snapcraft ще се осъществява чрез специален вграден механизъм за архивиране в строителния процес. Следователно съществуващите проекти ще могат да създават Snap пакети без промени и ще изискват модификации само когато пакетите бъдат прехвърлени към нова версия на системната база Ubuntu Core.

Що се отнася до работата, която вече е свършена, се споделя много кратко резюме от нея:

  • Текущата кодова база на Snapcraft вече се счита за наследена.
  • Основната входна точка за този пакет работи, когато е необходимо наследено архивиране на Snapcraft.
  • Legacy Snapcraft поддържа данни за конфигурацията на проекта под формата на речник.
  • Това беше променено, за да се използва пидантичен модел. Също така, JSON схемата ще трябва да се съхранява отделно.
  • Беше направен прост прототип с помощта на базата core22 (изображение за разработка), което доведе до незабавен инсталируем пакет, съдържащ тестово приложение.

Накрая ако се интересувате да научите повече за това Относно бележката, можете да проверите оригиналното съобщение в следваща връзка.


Бъдете първите, които коментират

Оставете вашия коментар

Вашият имейл адрес няма да бъде публикуван. Задължителните полета са отбелязани с *

*

*

  1. Отговорен за данните: Мигел Анхел Гатон
  2. Предназначение на данните: Контрол на СПАМ, управление на коментари.
  3. Легитимация: Вашето съгласие
  4. Съобщаване на данните: Данните няма да бъдат съобщени на трети страни, освен по законово задължение.
  5. Съхранение на данни: База данни, хоствана от Occentus Networks (ЕС)
  6. Права: По всяко време можете да ограничите, възстановите и изтриете информацията си.