SerpentOS toolkit na magagamit para sa pagsubok

Pagkatapos ng dalawang taon ng trabaho sa proyekto, inihayag ng mga developer ng pamamahagi ng SerpentOS ang posibilidad ng pagsubok sa mga pangunahing tool, kabilang ang:

  • tagapamahala ng pakete ng lumot;
  • sistema ng lalagyan ng lumot-lalagyan;
  • moss-deps dependency management system;
  • sistema ng pagpupulong ng bato;
  • Avalanche service hiding system;
  • tagapamahala ng imbakan ng barko;
  • summit control panel;
  • database ng moss-db;
  • sistema ng reproducible bootstrapping (bootstrap) bill.

Available ang pampublikong API at mga recipe ng package. Ang toolkit ay pangunahing binuo gamit ang D programming language, at ang code ay ipinamamahagi sa ilalim ng lisensya ng Zlib. Ang mga package ay nakasulat sa YAML configuration language at pinagsama-sama sa isang native na .stone binary na format na kinabibilangan ng:

  • Metadata ng package at mga dependency nito;
  • Impormasyon tungkol sa lokasyon ng package sa system na may kaugnayan sa iba pang mga pakete;
  • index ng naka-cache na data;
  • Mga nilalaman ng mga file ng package na kinakailangan para sa operasyon.

Ang moss package manager ay humihiram ng marami sa mga modernong feature na binuo sa mga package manager tulad ng eopkg/pisi, rpm, swupd at nix/guix, habang pinapanatili ang tradisyonal na pagtingin sa pagmamanipula ng package. Ang lahat ng mga pakete ay binuo nang walang estado bilang default at hindi kasama ang mga non-operating system file upang maiwasan ang mga sitwasyon kung saan ang package conflict resolution o merge na mga operasyon ay kinakailangan.

Gumagamit ang manager ng package ng modelo ng pag-update ng atomic system, kung saan naayos ang estado ng mga rootfs, at pagkatapos ng pag-update ay inililipat ang estado sa bago. Bilang resulta, kung may anumang mga problema na lumitaw sa panahon ng pag-update, posible na ibalik ang mga pagbabago sa nakaraang estado ng pagtatrabaho.

Upang makatipid ng espasyo sa disk kapag nag-iimbak ng maraming bersyon ng mga pakete, ginagamit ang deduplication batay sa mga hard link at isang nakabahaging cache. Ang mga nilalaman ng mga naka-install na pakete ay matatagpuan sa /os/store/installation/N na direktoryo, kung saan ang N ay ang numero ng bersyon. Ang mga base na direktoryo ay naka-link sa mga nilalaman ng direktoryo na ito gamit ang mga link (halimbawa, /sbin point sa /os/store/installation/0/usr/bin, at /usr points sa /os/installation/0/usr).

Ang proseso ng pag-install ng package ay binubuo ng mga sumusunod na hakbang:

  • Pagsusulat ng isang recipe para sa pag-install (stone.yml);
  • Pagbuo ng isang pakete gamit ang malaking bato;
  • Pagtanggap ng binary package sa .stone na format na may kinakailangang metadata;
  • Pagpasok ng mga pakete sa database;
  • Pag-install gamit ang moss package manager.

Ang lumang development team ng Solus distribution ay nag-rally sa proyekto. Halimbawa, sina Ikey Doherty, ang lumikha ng pamamahagi ng Solus, at Joshua Strobl, isang pangunahing developer ng Budgie desktop, na dati nang nag-anunsyo ng kanyang pagbibitiw mula sa namumunong konseho (Core Team) ng proyekto ng Solus, ay nakikibahagi sa pagbuo ng ang pamamahagi ng SerpentOS. kapangyarihan ng pinunong responsable para sa pakikipag-ugnayan sa mga developer at pagbuo ng user interface (Experience Lead).

Hinihikayat ng mga developer ng SerpentOS ang mga taong may kaalaman sa D programming language na sumali sa pagbuo ng pangunahing tooling at/o pagsusulat ng mga recipe ng package, at ang mga hindi teknikal na tao ay hinihiling na tumulong sa pagsasalin ng dokumentasyon sa iba't ibang wika.

Pinagmulan: opennet.ru

Magdagdag ng komento