SerpentOS toolkit beskikber foar testen

Nei twa jier wurk oan it projekt kundige de ûntwikkelders fan 'e SerpentOS-distribúsje de mooglikheid oan om de wichtichste ark te testen, ynklusyf:

  • mos pakket manager;
  • mos-container container systeem;
  • moss-deps ôfhinklikensbehearsysteem;
  • boulder assembly systeem;
  • Avalanche tsjinst hiding systeem;
  • skip repository manager;
  • top kontrôle paniel;
  • moss-db databank;
  • systeem fan reproducible bootstrapping (bootstrap) bill.

Iepenbiere API en pakketresepten beskikber. De toolkit wurdt primêr ûntwikkele mei de D-programmearringstaal, en de koade wurdt ferspraat ûnder de Zlib-lisinsje. Pakketten binne skreaun yn YAML-konfiguraasjetaal en kompilearre yn in memmetaal .stone-binêr formaat dat omfettet:

  • Pakketmetadata en har ôfhinklikens;
  • Ynformaasje oer de lokaasje fan it pakket yn it systeem relatyf oan oare pakketten;
  • Cached gegevens yndeks;
  • Ynhâld fan pakket triemmen nedich foar operaasje.

De mospakketbehearder lient in protte fan 'e moderne funksjes ûntwikkele yn pakketbehearders lykas eopkg/pisi, rpm, swupd en nix/guix, wylst de tradisjonele werjefte fan pakketmanipulaasje behâldt. Alle pakketten binne standert steatleas boud en omfetsje gjin net-bestjoeringssysteembestannen om situaasjes te foarkommen wêr't pakketkonfliktresolúsje of gearfoegingsoperaasjes nedich binne.

De pakketbehearder brûkt in atomysk systeem-fernijingsmodel, wêryn de steat fan 'e rootfs fêst is, en nei de fernijing wurdt de steat oerskeakele nei de nije. As gefolch, as der problemen ûntsteane tidens de fernijing, is it mooglik om de wizigingen werom te rôljen nei de foarige wurkstatus.

Om skiifromte te besparjen by it opslaan fan meardere ferzjes fan pakketten, wurdt deduplikaasje brûkt op basis fan hurde keppelings en in dielde cache. De ynhâld fan ynstallearre pakketten is te finen yn de map /os/store/installation/N, wêrby't N it ferzjenûmer is. Basismappen binne keppele oan de ynhâld fan dizze map mei keppelings (bygelyks /sbin wiist op /os/store/installation/0/usr/bin, en /usr wiist nei /os/installation/0/usr).

It pakket ynstallaasjeproses bestiet út de folgjende stappen:

  • It skriuwen fan in resept foar ynstallaasje (stone.yml);
  • Bouwe in pakket mei help fan boulder;
  • Untfange fan in binêre pakket yn .stone-formaat mei de nedige metadata;
  • It ynfieren fan pakketten yn 'e databank;
  • Ynstallaasje mei de mospakketbehearder.

It âlde ûntwikkelteam fan 'e Solus-distribúsje is om it projekt rûn. Bygelyks, Ikey Doherty, de makker fan 'e Solus-distribúsje, en Joshua Strobl, in wichtige ûntwikkelder fan it Budgie-buroblêd, dy't earder oankundige syn ûntslach út 'e bestjoersried (Core Team) fan it Solus-projekt, nimme diel oan 'e ûntwikkeling fan de SerpentOS distribúsje. foegen fan 'e lieder ferantwurdlik foar ynteraksje mei ûntwikkelders en ûntwikkeling fan de brûkersynterface (Experience Lead).

De SerpentOS-ûntwikkelders stimulearje minsken mei kennis fan 'e D-programmearringstaal om mei te dwaan oan it ûntwikkeljen fan kearnynstruminten en / of skriuwpakketresepten, en net-technyske minsken wurde frege om te helpen mei it oersetten fan dokumintaasje yn ferskate talen.

Boarne: opennet.ru

Add a comment