Sari la conținut

Nix (gestionar de pachete)

De la Wikipedia, enciclopedia liberă

Nix este un manager de pachete pentru sistemele informatice. Ca RPM, APT și multe alte managere de pachete, este capabil de a controla instalarea de pachete sau a grupurilor de fișiere versionate, cum ar fi aplicațiile software sau a datelor de configurare asociate.[1][2][3]

Nix[modificare | modificare sursă]

Pachetele Nix sunt configurate folosind un limbaj funcțional pur si evaluat in mod lenes special conceput pentru acest scop; shell script-uri sau orice alt program extern (ca Make) poate fi folosit pentru a construi pachete de la codul sursă. Natura pur funcționala a sistemului permite urmărirea foarte precisa a dependințelor; de exemplu, un pachet binar are o dependență pe sursă corespunzătoare pachetului, pe compilator și alte pachete care compilarea o cere. Hash-uri criptografice determina exact dependențele de compilare si execuție a fiecare pachet, și fiecare pachet sursă sau binar este reprezentat de un astfel de un hash. Ca urmare, depozitele centrale de pachete binare permit o optimizare transparenta a funcționarii de bază a pachetului manager (similar cu un "cache" de pachete indexate de un hash criptografic).

Dependențele sunt rezolvate printr-un sistem funcțional echivalent cu legăturile hard (hard linking), în care versiuni ale software-ului ce depind de un pachet nu sunt eliminate până când nici un pachet nu mai este dependent de ele. Acest lucru poate duce la o mai mare nevoile de depozitare, dar face toate upgrade-uri în condiții de siguranță (garantat să nu corupa aplicațiile existente) și de atomicitate. Acesta permite, de asemenea, existenta a mai multor versiuni a unui pachet, inclusiv de pachete parametrizate, cum ar fi un program cu și fără o anumită caracteristică, de a coexista fără nici o interferență.

Nix depinde de propria sa structură de directoare pentru instalarea de pachete. Toate pachetele sunt instalate în sub-directoare ale director-ului nix. În numirea directoarelor, diferite versiuni ale unui pachet sunt identificate prin precedarea numele pachetului de către codul hash-ul asociat.

Nix pote fi utilizat, cu unele rezerve, ca un manager de pachete peste un sistem de operare existent, cum ar fi o distribuție GNU/Linux. Acesta poate fi, de asemenea, folosit pentru a menține orice fel de configuratii de fișier, cum ar fi setări de server, în plus față de software-ul de pachete în sens strict.

NixOS[modificare | modificare sursă]

NixOS[4] este o distribuție Linux folosind Nix în mod consistent pentru fiecare bucată de software-ul în sistem.[5]

Referințe[modificare | modificare sursă]

  1. ^ Prins, P., Suresh, J. și Dolstra, E., "Nix stabilește dependența iadul pe toate distribuțiile Linux," linux.com, decembrie 22, 2008
  2. ^ Dolstra, E., de Jonge, M. și Visser, E. "Nix: Un Seif și Politică-Sistem Gratuit pentru Software-ul de Implementare." Arhivat în , la Wayback Machine.
  3. ^ Dolstra, E. Pur Software Funcțional Model De Implementare. Arhivat în , la Wayback Machine.
  4. ^ Nix: reproducible builds and deployments (în engleză), nixos.org 
  5. ^ Dolstra, E. și Löh, A. "NixOS: Pur Funcțional Distributie de Linux Arhivat în , la Wayback Machine.."

Link-uri externe[modificare | modificare sursă]