- Nix 81.2%
- Shell 18.8%
| hosts | ||
| .gitignore | ||
| AGENTS.md | ||
| common.nix | ||
| configuration.nix | ||
| deploy-nix.sh | ||
| README.md | ||
Configuration NixOS
Ce dépôt contient une configuration NixOS non-flake pour deux machines :
nixos-laptopnixos-desktop
Il permet de modifier les fichiers de configuration dans un dépôt utilisateur, puis de les déployer vers /etc/nixos quand ils sont prêts. Cette organisation évite d'éditer directement /etc/nixos, qui appartient à root, et limite les problèmes de droits pendant l'édition.
Organisation
.
+-- common.nix
+-- configuration.nix
+-- deploy-nix.sh
+-- hosts/
+-- nixos-laptop/
| +-- configuration.nix
| +-- hardware-configuration.nix
+-- nixos-desktop/
+-- configuration.nix
+-- hardware-configuration.nix
common.nix contient la configuration partagee : langue francaise, Cinnamon, LightDM, NetworkManager, paquets, Steam, Mullvad, utilisateur pascal, etc.
Chaque dossier dans hosts/ contient ce qui est propre a une machine : hostname, boot, disques, LUKS, GPU, services specifiques.
Choisir La Machine
Pour deployer la configuration du laptop :
sudo ./deploy-nix.sh nixos-laptop
Pour deployer la configuration du desktop :
sudo ./deploy-nix.sh nixos-desktop
Sans argument, le script utilise nixos-laptop par defaut.
Le script copie le dépôt vers /etc/nixos, cree une sauvegarde de l'ancienne configuration dans .backups/, puis genere /etc/nixos/configuration.nix pour importer la machine choisie.
Tester Et Appliquer
Tester la nouvelle generation sans l'appliquer definitivement :
sudo nixos-rebuild test
Appliquer la configuration si le test est correct :
sudo nixos-rebuild switch
Nouveau Desktop
Avant d'utiliser nixos-desktop, il faut remplacer son fichier materiel placeholder :
sudo nixos-generate-config --show-hardware-config
Copier ensuite le resultat dans :
hosts/nixos-desktop/hardware-configuration.nix
Ne pas reutiliser le fichier hardware du laptop sur le desktop : il contient des UUID, disques, LUKS et reglages GPU propres au laptop.
Il est aussi possible de tester directement une machine sans deployer vers /etc/nixos :
sudo nixos-rebuild test -I nixos-config=/home/pascal/Projets/nix-config/hosts/nixos-desktop/configuration.nix