Persiste la config sur /etc/nixos à l'install, firmware wifi, wallpaper par défaut

- install.sh: copie le repo (clone substitué) vers /mnt/etc/nixos après
  nixos-install, sinon la machine installée n'a aucun fichier à éditer
- base.nix: hardware.enableRedistributableFirmware pour les cartes wifi
  nécessitant un firmware non-libre
- desktop.nix: fond d'écran NixOS par défaut via dconf (n'existait pas)

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
This commit is contained in:
2026-09-09 16:53:08 +02:00
co-authored by Claude Sonnet 5
parent 096e534e91
commit 77b089bc45
4 changed files with 53 additions and 2 deletions
+32 -1
View File
@@ -92,6 +92,32 @@ do_install() {
swapoff /mnt/.install-swapfile
rm -f /mnt/.install-swapfile
# Sans cette étape, la machine installée n'a AUCUNE config sur son
# disque : le clone ci-dessus vit dans /tmp de l'environnement live, en
# RAM, effacé au reboot. La convergence auto (system.autoUpgrade, voir
# hosts/common/base.nix) continue de fonctionner sans ça (elle pointe
# sur l'URL distante), mais un technicien qui arrive sur la machine
# après coup n'a alors ni /etc/nixos, ni moyen d'ajouter/enlever un
# paquet à la main. On installe donc le même clone (déjà substitué avec
# le vrai disque) à l'emplacement standard NixOS, en conservant .git
# pour que `git pull`/`git log` marchent dessus normalement ensuite.
echo "Installation de la configuration dans /mnt/etc/nixos..."
rm -rf /mnt/etc/nixos
mkdir -p /mnt/etc
cp -a "$repo_dir" /mnt/etc/nixos
# Le disque cible a été substitué localement (sed plus haut) : ce fichier
# diffère donc de ce qui est sur git (placeholder). On le committe en
# local (jamais poussé) pour que `git status` reste propre sur la
# machine installée -- sinon chaque `git pull` ultérieur affiche un
# fichier modifié, source de confusion pour un technicien.
git -C /mnt/etc/nixos \
-c user.name="Installeur Nixos_Fleet" \
-c user.email="installeur@nixos-fleet.local" \
commit -aqm "Substitution locale du disque cible ($DEVICE)"
INSTALLED_ATTR="$attr"
}
echo "=== Installeur Nixos_Fleet ==="
@@ -190,6 +216,11 @@ case "$CHOICE" in
esac
echo
echo "Installation terminée. Redémarrage dans 10s (Ctrl-C pour annuler et inspecter /mnt)..."
echo "Installation terminée."
echo "Config installée dans /etc/nixos (attribut : ${INSTALLED_ATTR})."
echo "Pour ajouter/enlever un paquet après le premier démarrage :"
echo " 1. éditer les fichiers dans /etc/nixos"
echo " 2. nixos-rebuild switch --flake /etc/nixos#${INSTALLED_ATTR}"
echo "Redémarrage dans 10s (Ctrl-C pour annuler et inspecter /mnt)..."
sleep 10
reboot