De SerpentOS-toolkit is beschikbaar voor testing

Na een periode van twee jaar werken aan het project hebben de ontwikkelaars van de SerpentOS-distributie aangekondigd dat de belangrijkste tools nu getest kunnen worden, waaronder:

  • de pakketbeheerder moss;
  • het containersysteem moss-container;
  • het afhankelijkheidsmanagementsysteem moss-deps;
  • het bouwsysteem boulder;
  • het serviceschuilsysteem avalanche;
  • de repositorymanager vessel;
  • bedieningspaneel summit;
  • de database moss-db;
  • het systeem voor reproduceerbare bootstrapping (bootstrap) bill.

Er zijn een publieke API en pakketrecepten beschikbaar. De ontwikkeling van de tools berust voornamelijk op de programmeertaal D en de code wordt verspreid onder de Zlib-licentie. Pakketten worden geschreven in de YAML-configuratietaal en worden samengevoegd tot een eigen binaire indeling .stone, die omvat:

  • Metadata van het pakket en zijn afhankelijkheden;
  • Informatie over de locatie van het pakket in het systeem ten opzichte van andere pakketten;
  • Een index van gecachete gegevens;
  • De inhoud van de bestanden van het pakket die nodig zijn voor de werking.

De pakketbeheerder moss leent veel moderne mogelijkheden van andere pakketbeheerders zoals eopkg/pisi, rpm, swupd en nix/guix, terwijl hij tegelijkertijd een traditionele visie op pakketmanipulatie behoudt. Alle pakketten worden standaard verzameld in stateless-modus en bevatten geen bestanden die niet met het besturingssysteem zijn verbonden, om situaties te voorkomen waarin conflicten tussen pakketten moeten worden opgelost of samenvoegoperaties moeten worden uitgevoerd.

De pakketbeheerder gebruikt een atomair updatesysteem waarbij de status van rootfs wordt vastgelegd en na de update de status wordt omgeschakeld naar een nieuwe. Als gevolg hiervan, als er tijdens de update problemen optreden, is er een mogelijkheid om terug te keren naar de vorige werkstatus.

Om schijfruimte te besparen bij het opslaan van meerdere versies van pakketten, wordt deduplicatie toegepast op basis van harde koppelingen en een gedeelde cache. De inhoud van geĆÆnstalleerde pakketten wordt geplaatst in de map /os/store/installation/N, waar N het versienummer is. De basisdirectories worden aan de inhoud van deze map gekoppeld met behulp van links (bijvoorbeeld /sbin wijst naar /os/store/installation/0/usr/bin en /usr naar /os/installation/0/usr).

Het installatieproces van pakketten bestaat uit de volgende stappen:

  • Het schrijven van een installatie-recept (stone.yml);
  • Het bouwen van het pakket met behulp van boulder;
  • Het verkrijgen van een binaire pakket in .stone-indeling met de benodigde metadata;
  • Database-ondersteuning voor pakketten;
  • Installatie met de pakketbeheerder moss.

Rondom het project heeft een oude groep ontwikkelaars van de Solus-distributie zich verenigd. Bijvoorbeeld, bij de ontwikkeling van de SerpentOS-distributie zijn Ikey Doherty, de maker van de Solus-distributie, en Joshua Strobl, de belangrijkste ontwikkelaar van de Budgie-desktop, betrokken. Hij had eerder aangekondigd zich terug te trekken uit de stuurgroep (Core Team) van het Solus-project en heeft zijn verantwoordelijkheden als leider die verantwoordelijk is voor de interactie met ontwikkelaars en de ontwikkeling van de gebruikersinterface (Experience Lead) neergelegd.

De ontwikkelaars van SerpentOS roepen specialisten die de programmeertaal D beheersen op om deel te nemen aan de ontwikkeling van de basisgereedschappen en/of het schrijven van pakketrecepten. Niet-technische specialisten worden verzocht te helpen bij het vertalen van de documentatie naar verschillende talen.

Bron: opennet.ru

Koop betrouwbare webhosting met bescherming tegen DDoS, VPS VDS servers šŸ”„ Koop betrouwbare webhosting met bescherming tegen DDoS, VPS VDS servers | ProHoster