SerpentOS-työkalupakki testaukseen

Kahden vuoden työskentelyn jälkeen SerpentOS-jakelun kehittäjät ilmoittivat mahdollisuudesta testata tärkeimpiä työkaluja, mukaan lukien:

  • sammaleen pakettien hallinta;
  • sammaleen kontti-järjestelmä;
  • moss-deps-riippuvuuden hallintajärjestelmä;
  • boulder kokoonpano järjestelmä;
  • Avalanche palvelun piilottaminen järjestelmä;
  • alusten arkiston johtaja;
  • huippukokouksen ohjauspaneeli;
  • sammal-db-tietokanta;
  • järjestelmä toistettavan bootstrapping (bootstrap) laskun.

Julkinen API ja pakettireseptit saatavilla. Työkalusarja on kehitetty ensisijaisesti D-ohjelmointikielellä, ja koodia jaetaan Zlib-lisenssillä. Paketit on kirjoitettu YAML-määrityskielellä ja käännetty alkuperäiseen .stone-binaarimuotoon, joka sisältää:

  • Paketin metatiedot ja niiden riippuvuudet;
  • Tiedot paketin sijainnista järjestelmässä suhteessa muihin pakkauksiin;
  • Välimuistissa olevien tietojen indeksi;
  • Toiminnassa tarvittavien pakettitiedostojen sisältö.

Moss-paketinhallinta lainaa monia paketinhallinnassa kehitettyjä nykyaikaisia ​​ominaisuuksia, kuten eopkg/pisi, rpm, swupd ja nix/guix, säilyttäen samalla perinteisen näkemyksen pakettien käsittelystä. Kaikki paketit on rakennettu oletusarvoisesti tilattomina, eivätkä ne sisällä muita kuin käyttöjärjestelmätiedostoja, jotta vältytään tilanteilta, joissa tarvitaan pakettiristiriitojen ratkaisemista tai yhdistämistoimintoja.

Paketinhallinta käyttää atomijärjestelmän päivitysmallia, jossa rootfs-tila on kiinteä ja päivityksen jälkeen tila vaihtuu uuteen. Tämän seurauksena, jos päivityksen aikana ilmenee ongelmia, muutokset on mahdollista palauttaa edelliseen toimintatilaan.

Levytilan säästämiseksi, kun tallennetaan useita pakettien versioita, duplikointia käytetään kiintolinkkien ja jaetun välimuistin perusteella. Asennettujen pakettien sisältö sijaitsee /os/store/installation/N-hakemistossa, jossa N on versionumero. Perushakemistot linkitetään tämän hakemiston sisältöön linkkien avulla (esimerkiksi /sbin osoittaa hakemistoon /os/store/installation/0/usr/bin ja /usr osoittaa /os/installation/0/usr).

Paketin asennusprosessi koostuu seuraavista vaiheista:

  • Asennusreseptin kirjoittaminen (stone.yml);
  • Paketin rakentaminen lohkareista;
  • Binääripaketin vastaanottaminen .stone-muodossa ja tarvittavat metatiedot;
  • Pakettien syöttäminen tietokantaan;
  • Asennus moss-pakettienhallinnan avulla.

Solus-jakelun vanha kehitystiimi on kokoontunut projektin ympärille. Esimerkiksi Solus-jakelun luoja Ikey Doherty ja Budgie-työpöydän avainkehittäjä Joshua Strobl, joka ilmoitti aiemmin eroavansa Solus-projektin hallintoneuvostosta (Core Team) ovat mukana kehitystyössä. SerpentOS-jakelu, vuorovaikutuksesta kehittäjien kanssa ja käyttöliittymän kehittämisestä vastaavan johtajan valtuudet (Experience Lead).

SerpentOS-kehittäjät rohkaisevat ihmisiä, joilla on D-ohjelmointikielen tuntemus, liittymään ydintyökalujen kehittämiseen ja/tai pakettireseptien kirjoittamiseen, ja ei-teknisiä ihmisiä pyydetään auttamaan dokumentaation kääntämisessä eri kielille.

Lähde: opennet.ru

Lisää kommentti