Lancer cette commande depuis un compte qui a accès à root en sudo :
curl -L https://nixos.org/nix/install | sh
Ajouter dans le .zshrc :
source ${HOME}/.nix-profile/etc/profile.d/nix.sh
| Description | Commande |
|---|---|
| Créer un shell avec des paquets | nix-shell '<nixpkgs>' -p ansible_2_9 |
| Installer un paquet | nix-env -i <package> |
Exemple de fichier nix qui crée un shell avec quelques dépendances :
{ pkgs ? import <nixpkgs> {} }:
pkgs.mkShell {
buildInputs = [
pkgs.ansible_2_9
pkgs.jsonnet
pkgs.pwgen
];
}
Pour l’utiliser avec direnv, faire un fichier .envrc contenant use_nix. Pour l’activer dans le répertoire, faire direnv allow.
package = callPackage ./attr-set.nix { attrs... } : permet d’importer un paquet définit dans un fichier externe. Cette fonction wrap la dérivation en ajoutant deux fonctions :
override : override les attributs du fichieroverrideAttrs : modifier les attributs de la dérivation