Інструментарый SerpentOS даступны для тэсціравання

Пасля двух гадоў працы над праектам распрацоўшчыкі дыстрыбутыва SerpentOS заявілі аб магчымасці тэставання асноўнага інструментара, які ўключае ў сябе:

  • пакетны мэнэджар moss;
  • сістэму кантэйнераў moss-container;
  • сістэму кіравання залежнасцямі moss-deps;
  • сістэму зборкі boulder;
  • сістэму ўтойвання сэрвісаў avalanche;
  • менеджэр рэпазітараў vessel;
  • панэль кіравання summit;
  • базу даных moss-db;
  • сістэму прайграванага бутстрэпінг (bootstrap) bill.

Даступныя публічны API і рэцэпты пакетаў. Для распрацоўкі інструментара ў асноўным выкарыстоўваецца мова праграмавання D, а код распаўсюджваецца пад ліцэнзіяй Zlib. Пакеты пішуцца на мове канфігурацыі YAML і збіраюцца ва ўласны бінарны фармат .stone, які ўключае:

  • Метададзеныя пакета і яго залежнасці;
  • Інфармацыю аб размяшчэнні пакета ў сістэме адносна іншых пакетаў;
  • Індэкс кэшаваных дадзеных;
  • Змесціва файлаў пакета, неабходных для працы.

Пакетны мэнэджар moss запазычае шматлікія сучасныя магчымасці, якія развіваюцца ў такіх пакетных мэнэджарах, як eopkg/pisi, rpm, swupd і nix/guix, захоўваючы пры гэтым традыцыйны погляд на маніпуляцыю пакетамі. Усе пакеты па змаўчанні збіраюцца ў рэжыме stateless і не ўключаюць файлы, не звязаныя з аперацыйнай сістэмай, каб пазбегнуць сітуацый, у якіх патрабуецца вырашэнне канфліктаў паміж пакетамі або аперацыі зліцця.

Пакетны мэнэджар выкарыстоўвае атамарную мадэль абнаўлення сістэмы, пры якой фіксуецца стан rootfs, а пасля абнаўлення стан перамыкаецца на новы. Як следства калі ў ходзе абнаўлення ўзніклі нейкія праблемы, ёсць магчымасць адкату змяненняў на мінулае працоўны стан.

Для эканоміі дыскавай прасторы пры захоўванні некалькіх версій пакетаў ужываецца дэдуплікацыя на аснове цвёрдых спасылак і сумесна выкарыстоўванага кэша. Змесціва ўсталяваных пакетаў размяшчаецца ў каталогу /os/store/installation/N, дзе N нумар версіі. Да змесціва дадзенага каталога пры дапамозе спасылак прывязваюцца базавыя каталогі (напрыклад, /sbin паказвае на /os/store/installation/0/usr/bin, а /usr на /os/installation/0/usr).

Працэс усталёўкі пакетаў складаецца з наступных этапаў:

  • Напісанне рэцэпта па ўстаноўцы (stone.yml);
  • Зборка пакета з дапамогай boulder;
  • Атрыманне бінарнага пакета ў фармаце .stone з неабходнымі метададзенымі;
  • Занясенне ў базу дадзеных пакетаў;
  • Ўстаноўка пакетным мэнэджэрам moss.

Вакол праекту згуртавалася старая каманда распрацоўнікаў дыстрыбутыва Solus. Напрыклад, у распрацоўцы дыстрыбутыва SerpentOS прымаюць удзел Айкі Доэрці (Ikey Doherty), стваральнік дыстрыбутыва Solus, і Джошуа Стробл (Joshua Strobl), ключавы распрацоўшчык працоўнага стала Budgie, раней абвясціў пра сыход з кіравальнай рады (Core Team) праекту Solus і зняўшы паўнамоцтвы лідэра, які адказвае за ўзаемадзеянне з распрацоўшчыкамі і развіццё карыстацкага інтэрфейсу (Experience Lead).

Распрацоўнікі SerpentOS заклікаюць адмыслоўцаў, дасведчаных мова праграмавання D, далучыцца да распрацоўкі асноўнага інструментара і/ці напісанні рэцэптаў пакетаў, а нетэхнічных адмыслоўцаў просяць дапамагчы ў перакладзе дакументацыі на розныя мовы.

Крыніца: opennet.ru

Дадаць каментар