SerpentOS-toolkit beschikbaar om te testen

Na twee jaar aan het project te hebben gewerkt, kondigden de ontwikkelaars van de SerpentOS-distributie de mogelijkheid aan om de belangrijkste toolkit te testen, die bestaat uit:

  • mos pakketbeheerder
  • moscontainer systeem;
  • moss-deps afhankelijkheidsbeheersysteem;
  • montagesysteem voor rotsblokken;
  • lawinedienst onderduiksysteem;
  • beheerder van de opslagplaats voor schepen;
  • controlepaneel op de top;
  • moss-db-database;
  • reproduceerbare bootstrapping-systeemrekening.

Openbare API en pakketrecepten beschikbaar. Voor het ontwikkelen van de toolkit wordt voornamelijk de programmeertaal D gebruikt en wordt de code gedistribueerd onder de Zlib-licentie. Pakketten zijn geschreven in de YAML-configuratietaal en ingebouwd in hun eigen binaire .stone-indeling, waaronder:

  • Pakketmetadata en de bijbehorende afhankelijkheden;
  • Informatie over de locatie van het pakket in het systeem ten opzichte van andere pakketten;
  • Index van gegevens in de cache;
  • De inhoud van de pakketbestanden die nodig zijn voor de werking.

De moss-pakketbeheerder leent veel van de moderne functies die door pakketbeheerders zijn ontwikkeld, zoals eopkg/pisi, rpm, swupd en nix/guix, terwijl het een traditionele kijk op pakketmanipulatie behoudt. Alle pakketten zijn standaard stateless gebouwd en bevatten geen niet-besturingssysteembestanden om situaties te vermijden die pakketconflictoplossing of samenvoegbewerkingen vereisen.

De pakketbeheerder gebruikt een atomair systeemupdatemodel, dat de status van de rootfs repareert, en na de update wordt de status overgeschakeld naar de nieuwe. Als gevolg hiervan is het mogelijk om, als er problemen zijn tijdens de update, de wijzigingen terug te draaien naar de vorige werkstatus.

Deduplicatie op basis van harde links en gedeelde cache wordt gebruikt om schijfruimte te besparen bij het opslaan van meerdere versies van pakketten. De inhoud van geïnstalleerde pakketten bevindt zich in de map /os/store/install/N, waar N het versienummer is. Basismappen verwijzen naar de inhoud van deze map (bijvoorbeeld /sbin verwijst naar /os/store/installation/0/usr/bin, en /usr verwijst naar /os/installation/0/usr).

Het installatieproces van het pakket bestaat uit de volgende stappen:

  • Schrijven van een recept voor installatie (stone.yml);
  • Een pakket bouwen met behulp van kei;
  • Het verkrijgen van een binair pakket in .stone formaat met de nodige metadata;
  • Pakketten invoeren in de database;
  • Installatie met de moss-pakketbeheerder.

Het oude Solus-distributieteam schaarde zich achter het project. De SerpentOS-distributie wordt bijvoorbeeld ontwikkeld door Ikey Doherty, maker van de Solus-distributie, en Joshua Strobl, een belangrijke ontwikkelaar van de Budgie-desktop, die eerder zijn vertrek uit het Solus Core Team aankondigde en de bevoegdheden van de leider die verantwoordelijk was voor interactie stopte met ontwikkelaars en ontwikkeling van de gebruikersinterface (Experience Lead).

De ontwikkelaars van SerpentOS roepen mensen met kennis van de D-programmeertaal op om mee te werken aan de ontwikkeling van de kerntoolkit en/of het schrijven van pakketrecepten, en niet-technische mensen worden gevraagd om de documentatie in verschillende talen te helpen vertalen.

Bron: opennet.ru

Voeg een reactie