SerpentOS verktygslåda tillgänglig för testning

Efter två års arbete med projektet tillkännagav utvecklarna av SerpentOS-distributionen möjligheten att testa de viktigaste verktygen, inklusive:

  • mosspakethanterare;
  • mossacontainersystem;
  • moss-deps beroendehanteringssystem;
  • blockmonteringssystem;
  • Gömsystem för lavintjänster;
  • fartygsförvarschef;
  • toppmötes kontrollpanel;
  • moss-db databas;
  • system för reproducerbar bootstrapping (bootstrap) sedel.

Offentliga API och paketrecept tillgängliga. Verktygslådan är i första hand utvecklad med hjälp av programmeringsspråket D, och koden distribueras under Zlib-licensen. Paketen är skrivna i YAML-konfigurationsspråk och kompilerade till ett inbyggt binärt .stone-format som inkluderar:

  • Paketmetadata och dess beroenden;
  • Information om paketets plats i systemet i förhållande till andra paket;
  • Cachad dataindex;
  • Innehållet i paketfiler som krävs för drift.

Moss-pakethanteraren lånar många av de moderna funktioner som utvecklats i pakethanterare som eopkg/pisi, rpm, swupd och nix/guix, samtidigt som den traditionella synen på paketmanipulation bibehålls. Alla paket byggs tillståndslösa som standard och inkluderar inte filer som inte är operativsystem för att undvika situationer där paketkonfliktlösning eller sammanslagningsoperationer krävs.

Pakethanteraren använder en atomsystemuppdateringsmodell, där tillståndet för rootfs är fixat, och efter uppdateringen växlas tillståndet till det nya. Som ett resultat, om några problem uppstår under uppdateringen, är det möjligt att återställa ändringarna till det tidigare arbetstillståndet.

För att spara diskutrymme vid lagring av flera versioner av paket, används deduplicering baserat på hårda länkar och en delad cache. Innehållet i installerade paket finns i katalogen /os/store/installation/N, där N är versionsnumret. Baskataloger är länkade till innehållet i denna katalog med hjälp av länkar (till exempel /sbin pekar på /os/store/installation/0/usr/bin och /usr pekar på /os/installation/0/usr).

Paketinstallationsprocessen består av följande steg:

  • Att skriva ett recept för installation (stone.yml);
  • Bygga ett paket med boulder;
  • Ta emot ett binärt paket i .stone-format med nödvändig metadata;
  • Mata in paket i databasen;
  • Installation med moss-pakethanteraren.

Det gamla utvecklingsteamet från Solus-distributionen har samlat sig kring projektet. Till exempel deltar Ikey Doherty, skaparen av Solus-distributionen, och Joshua Strobl, en nyckelutvecklare av Budgie-skrivbordet, som tidigare tillkännagav sin avgång från det styrande rådet (Core Team) för Solus-projektet, i utvecklingen av SerpentOS distribution, befogenheter för ledaren ansvarig för interaktion med utvecklare och utveckling av användargränssnittet (Experience Lead).

SerpentOS-utvecklarna uppmuntrar personer med kunskaper i programmeringsspråket D att vara med och utveckla kärnverktyg och/eller skriva paketrecept, och icke-tekniska personer ombeds hjälpa till att översätta dokumentation till olika språk.

Källa: opennet.ru

Lägg en kommentar