Toolkit SerpentOS disponibile per il test

Dopo due anni di lavoro sul progetto, gli sviluppatori della distribuzione SerpentOS hanno annunciato la possibilità di testare il toolkit principale, che comprende:

  • gestore di pacchetti moss
  • sistema contenitore contenitore muschio;
  • sistema di gestione delle dipendenze moss-deps;
  • sistema di assemblaggio di massi;
  • sistema di nascondiglio per il servizio valanghe;
  • responsabile del deposito delle navi;
  • pannello di controllo in vetta;
  • database moss-db;
  • disegno di legge del sistema di bootstrap riproducibile.

API pubbliche e ricette di pacchetti disponibili. Per sviluppare il toolkit viene utilizzato principalmente il linguaggio di programmazione D e il codice è distribuito con licenza Zlib. I pacchetti sono scritti nel linguaggio di configurazione YAML e integrati nel proprio formato binario .stone, che include:

  • Metadati del pacchetto e relative dipendenze;
  • Informazioni sulla posizione del pacchetto nel sistema rispetto ad altri pacchetti;
  • Indice dei dati memorizzati nella cache;
  • Il contenuto dei file del pacchetto necessari per il funzionamento.

Il gestore di pacchetti moss prende in prestito molte delle funzionalità moderne sviluppate dai gestori di pacchetti come eopkg/pisi, rpm, swupd e nix/guix, pur mantenendo una visione tradizionale della manipolazione dei pacchetti. Tutti i pacchetti sono compilati senza stato per impostazione predefinita e non includono file di sistema non operativi per evitare situazioni che richiedono la risoluzione dei conflitti tra pacchetti o operazioni di unione.

Il gestore pacchetti utilizza un modello di aggiornamento del sistema atomico, che corregge lo stato di rootfs e, dopo l'aggiornamento, lo stato passa a quello nuovo. Di conseguenza, in caso di problemi durante l'aggiornamento, è possibile ripristinare le modifiche allo stato di lavoro precedente.

La deduplicazione basata su hard link e cache condivisa viene utilizzata per risparmiare spazio su disco durante l'archiviazione di più versioni di pacchetti. Il contenuto dei pacchetti installati si trova nella directory /os/store/installation/N, dove N è il numero di versione. Le directory di base fanno riferimento al contenuto di questa directory (ad esempio, /sbin punta a /os/store/installation/0/usr/bin e /usr punta a /os/installation/0/usr).

Il processo di installazione del pacchetto consiste nei seguenti passaggi:

  • Scrivere una ricetta per l'installazione (stone.yml);
  • Costruire un pacchetto usando il masso;
  • Ottenere un pacchetto binario in formato .stone con i metadati necessari;
  • Inserimento dei pacchetti nel database;
  • Installazione con il gestore di pacchetti moss.

Il vecchio team di distribuzione di Solus si è radunato attorno al progetto. Ad esempio, la distribuzione SerpentOS è stata sviluppata da Ikey Doherty, creatore della distribuzione Solus, e Joshua Strobl, uno sviluppatore chiave del desktop Budgie, che in precedenza aveva annunciato la sua partenza dal Solus Core Team e ha ritirato i poteri del leader responsabile dell'interazione con gli sviluppatori e sviluppo dell'interfaccia utente (Experience Lead).

Gli sviluppatori di SerpentOS stanno invitando le persone con conoscenza del linguaggio di programmazione D a partecipare allo sviluppo del toolkit di base e/o alla scrittura delle ricette del pacchetto, e alle persone non tecniche viene chiesto di aiutare a tradurre la documentazione in varie lingue.

Fonte: opennet.ru

Aggiungi un commento