Differenze tra le versioni di "Appunti NixOS"

Da GolemWiki.
Jump to navigation Jump to search
Riga 33: Riga 33:
 
  nix-env --upgrade
 
  nix-env --upgrade
  
 
+
Calcolare l'hash di un file
 +
nix-prefetch-url https://percorso del pacchetto da scaricare/pacchetto.tgz
  
  
  
 
[[Category: Howto]]
 
[[Category: Howto]]

Versione delle 14:34, 7 mag 2023

Introduzione

NixOS è una distribuzione Linux basata sul gestore di pacchetti Nix che, a differenza dei tradizionali gestori di pacchetti, offre un approccio cosiddetto funzionale e dichiarativo. Nix permette infatti di creare ambienti isolati e indipendenti (installa i programmi in directory il cui nome viene generato univocamente tramite un hash crittografico) dove tutti i pacchetti e le rispettive dipendenze sono gestiti in modo sicuro e riproducibile. È anche possibile installare diverse versioni di un pacchetto senza che entrino in conflitto tra loro o con il sistema host.

Una delle caratteristiche principali di Nix e NixOS è la possibilità di effettuare rollback degli aggiornamenti. Questo significa che è possibile tornare a una versione precedente del sistema in caso di problemi o incompatibilità con le nuove versioni. Inoltre, grazie alla gestione dichiarativa dei pacchetti, è possibile condividere facilmente le configurazioni del sistema con altri utenti, rendendo semplice la collaborazione e la riproducibilità dell'ambiente.


Link utili

Comandi comuni

Cercare un pacchetto

nix-env -aqP | grep <package>

Si consiglia di configurare un alias su .bashrc del tipo alias nix-search='nix-env -qaP | grep'

Installare un pacchetto

nix-env --install <package>

Provare un pacchetto senza installarlo

nix-shell -p <package>

«Disinstallare» un pacchetto (in realtà rimuove solo il link)

nix-env --uninstall <package>

Eliminare le vecchie versioni dei pacchetti (compresi i pacchetti che non hanno più un link)

nix-collect-garbage -d

Aggiornare la lista dei repository

nix-channel --update

Aggiornare tutti i pacchetti

nix-env --upgrade

Calcolare l'hash di un file

nix-prefetch-url https://percorso del pacchetto da scaricare/pacchetto.tgz