A projekten végzett két év munka után a SerpentOS disztribúció fejlesztői bejelentették a fő eszközök tesztelésének lehetőségét, beleértve:
- Moha csomagkezelő;
- moha-konténer konténerrendszer;
- Moha-mély függőségkezelő rendszer;
- sziklák összeszerelő rendszere;
- Lavinaszolgálat bújórendszer;
- hajótároló kezelője;
- csúcs vezérlőpult;
- moha-db adatbázis;
- rendszer reprodukálható bootstrapping (bootstrap) bill.
Nyilvános API és csomagreceptek elérhetők. Az eszközkészletet elsősorban a D programozási nyelv használatával fejlesztik, a kódot pedig a Zlib licenc alatt terjesztik. A csomagokat YAML konfigurációs nyelven írják, és natív .stone bináris formátumba fordítják, amely a következőket tartalmazza:
- A csomag metaadatai és függőségei;
- Információk a csomag helyéről a rendszerben a többi csomaghoz képest;
- Gyorsítótárazott adatindex;
- A működéshez szükséges csomagfájlok tartalma.
A moss csomagkezelő számos olyan modern szolgáltatást kölcsönzött, amelyet a csomagkezelőkben fejlesztettek ki, mint például az eopkg/pisi, rpm, swupd és nix/guix, miközben megtartja a csomagkezelés hagyományos nézetét. Minden csomag alapértelmezés szerint állapotmentes, és nem tartalmaz nem operációs rendszer fájlokat, hogy elkerülje azokat a helyzeteket, amikor csomagütközések feloldására vagy összevonási műveletekre van szükség.
A csomagkezelő atomi rendszerfrissítési modellt használ, melyben a rootfs állapota rögzítve van, majd a frissítés után átvált az új állapotba. Ennek eredményeként, ha bármilyen probléma merül fel a frissítés során, lehetőség van a változtatások visszaállítására az előző működő állapotra.
A lemezterület megtakarítása érdekében a csomagok több verziójának tárolása során a merev hivatkozásokon és a megosztott gyorsítótáron alapuló deduplikációt használnak. A telepített csomagok tartalma az /os/store/installation/N könyvtárban található, ahol N a verziószám. Az alapkönyvtárak hivatkozások segítségével kapcsolódnak a könyvtár tartalmához (például az /sbin a /os/store/installation/0/usr/bin, a /usr pedig az /os/installation/0/usr könyvtárra mutat).
A csomag telepítési folyamata a következő lépésekből áll:
- Beépítési recept írása (stone.yml);
- Csomag építése sziklából;
- Bináris csomag fogadása .stone formátumban a szükséges metaadatokkal;
- Csomagok bevitele az adatbázisba;
- Telepítés a moss csomagkezelő segítségével.
A Solus disztribúció régi fejlesztőcsapata a projekt köré tömörült. Például Ikey Doherty, a Solus disztribúció megalkotója és Joshua Strobl, a Budgie desktop kulcsfontosságú fejlesztője, aki korábban bejelentette lemondását a Solus projekt kormányzótanácsából (Core Team) a fejlesztésben vesz részt. a SerpentOS disztribúció, a fejlesztőkkel való interakcióért és a felhasználói felület fejlesztéséért felelős vezető hatásköre (Experience Lead).
A SerpentOS fejlesztői arra biztatják a D programozási nyelvet ismerő embereket, hogy csatlakozzanak az alapvető szerszámok fejlesztéséhez és/vagy a csomagreceptek írásához, a nem műszaki szakembereket pedig arra kérik, hogy segítsenek lefordítani a dokumentációt különböző nyelvekre.
Forrás: opennet.ru