NixOS
Le store, les profils et les générations¶
Chaque paquet et chaque configuration système sont stockés dans /nix/store/ sous un chemin unique basé sur un hash cryptographique. Quand vous modifiez la configuration et reconstruisez le système, NixOS crée une nouvelle génération sans toucher à l’ancienne. Vous pouvez revenir en arrière instantanément.
Très bien, from scratch.
1. Activer les flakes¶
Dans /etc/nixos/configuration.nix, ajoute :
Puis :
2. Créer le flake¶
sudo mv /etc/nixos/configuration.nix /etc/nixos/configuration.nix.bak
sudo nano /etc/nixos/flake.nix
{
description = "NixOS configuration";
inputs = {
nixpkgs.url = "github:nixos/nixpkgs/nixos-25.11";
home-manager.url = "github:nix-community/home-manager/release-25.11";
home-manager.inputs.nixpkgs.follows = "nixpkgs";
};
outputs = inputs@{ nixpkgs, home-manager, ... }: {
nixosConfigurations = {
nixos = nixpkgs.lib.nixosSystem {
system = "x86_64-linux";
modules = [
./configuration.nix
home-manager.nixosModules.home-manager
{
home-manager.useGlobalPkgs = true;
home-manager.useUserPackages = true;
home-manager.extraSpecialArgs = { inherit inputs; };
home-manager.users.mathod = ./home.nix;
}
];
};
};
};
}
3. Restaurer configuration.nix¶
4. Créer home.nix¶
{ config, pkgs, ... }:
{
home.username = "mathod";
home.homeDirectory = "/home/mathod";
home.stateVersion = "25.11";
programs.home-manager.enable = true;
programs.vim = {
enable = true;
settings = {
expandtab = true;
tabstop = 2;
number = true;
};
};
programs.zsh = {
enable = true;
};
}
5. Appliquer¶
Home-manager est installé. Ensuite tu ajoutes tes packages et programmes dans home.nix.