Unifie le compte generique flotte : usagers -> nixos (compte, attribut, dossier)

Renomme partout (flake.nix, hosts/usagers -> hosts/nixos,
install.sh, autoUpgrade.flake, home-manager.users, README) pour
que compte systeme, attribut de flake et mot de passe portent tous
le meme nom "nixos" -- un seul mot a retenir sur un poste partage.

Remplace aussi hosts/nixos/dconf.ini (jusque-la un seul reglage,
le fond d'ecran) par le dconf complet d'oreo (panneau, themes,
reglages GTK/Nemo...), chemins de wallpaper adaptes vers
hosts/common/wallpaper (partage, pas par-profil). Warpinator
connect-id retire du dconf copie : deja exclu du bureau Cinnamon
sur les trois profils (fleet/thomas-clara-jade/oreo) via
environment.cinnamon.excludePackages, une valeur figee partagee
par tout le parc aurait de toute facon casse l'appairage si le
paquet avait ete present.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
This commit is contained in:
2026-09-12 14:23:18 +02:00
co-authored by Claude Sonnet 5
parent 8f99c20ec5
commit 2efdcaeecb
8 changed files with 246 additions and 46 deletions
+15 -15
View File
@@ -1,6 +1,6 @@
# Nixos_Fleet
Déploiement en masse (PXE ou USB) du profil générique `usagers`.
Déploiement en masse (PXE ou USB) du profil générique `nixos`.
Repo public. `git pull` sans mot de passe.
@@ -122,11 +122,11 @@ N'y touche pas.
PC normal :
Utilisateur : `usagers`
Utilisateur : `nixos`
Mot de passe : `nixos`
Mot de passe stable, ne change jamais tout seul et n'est jamais redemandé (poste partagé, pas nominatif -- voir "Réactiver un changement de mot de passe forcé" en référence si ça doit changer un jour).
Utilisateur et mot de passe identiques, volontairement (un seul mot à retenir sur un poste partagé). Stable, ne change jamais tout seul et n'est jamais redemandé (voir "Réactiver un changement de mot de passe forcé" en référence si ça doit changer un jour).
PC pour une personne :
@@ -313,7 +313,7 @@ IP qui changent tout le temps → un autre DHCP tourne déjà, repasser `standal
## Contenu du repo
`hosts/usagers/` → le seul profil du repo. Jamais chiffré.
`hosts/nixos/` → le seul profil du repo. Jamais chiffré.
`diskos/plain.nix` → layout disko (disque `main`, GPT+ESP+btrfs).
@@ -323,7 +323,7 @@ IP qui changent tout le temps → un autre DHCP tourne déjà, repasser `standal
## Personnaliser le bureau (dconf)
`hosts/usagers/dconf.ini` contient les réglages Cinnamon (thème, fond d'écran, panneau...), chargés par home-manager à chaque rebuild.
`hosts/nixos/dconf.ini` contient les réglages Cinnamon (thème, fond d'écran, panneau...), chargés par home-manager à chaque rebuild.
Pour changer un réglage : le faire en direct dans l'interface Cinnamon sur une machine, puis exporter :
@@ -331,11 +331,11 @@ Pour changer un réglage : le faire en direct dans l'interface Cinnamon sur une
dconf dump /org/cinnamon/ > dconf.ini
```
Remplacer `hosts/usagers/dconf.ini` par ce fichier, commit, push. Rien à changer dans le `.nix`.
Remplacer `hosts/nixos/dconf.ini` par ce fichier, commit, push. Rien à changer dans le `.nix`.
## Réactiver un changement de mot de passe forcé
Par défaut, `usagers` garde `nixos` comme mot de passe stable, sans expiration (`hosts/usagers/configuration.nix`). Voulu : poste partagé, pas nominatif -- forcer un changement casserait le mot de passe commun affiché sur l'étiquette/le guide remis aux gens.
Par défaut, le compte `nixos` garde `nixos` comme mot de passe stable, sans expiration (`hosts/nixos/configuration.nix`). Voulu : poste partagé, pas nominatif -- forcer un changement casserait le mot de passe commun affiché sur l'étiquette/le guide remis aux gens.
`nixos_users` force ce changement au premier login pour les postes nominatifs, via un script d'activation one-shot (`hosts/common/accounts.nix` de ce repo-là) :
@@ -343,14 +343,14 @@ Par défaut, `usagers` garde `nixos` comme mot de passe stable, sans expiration
system.activationScripts.forcePasswordChangeOnce.text = ''
marker=/var/lib/nixos-force-pwchange-done
if [ ! -e "$marker" ]; then
${pkgs.shadow}/bin/chage -d 0 usagers
${pkgs.shadow}/bin/chage -d 0 nixos
mkdir -p /var/lib
touch "$marker"
fi
'';
```
Pour réactiver la même chose sur `usagers`, reprendre ce bloc tel quel dans `hosts/usagers/configuration.nix` (ou `hosts/common/default.nix` si ça doit s'appliquer à un futur deuxième profil de flotte). Le marqueur est nécessaire : sans lui, `chage -d 0` s'appliquerait à nouveau à chaque `nixos-rebuild switch`, redemandant un mot de passe à chaque redémarrage.
Pour réactiver la même chose sur `nixos`, reprendre ce bloc tel quel dans `hosts/nixos/configuration.nix` (ou `hosts/common/default.nix` si ça doit s'appliquer à un futur deuxième profil de flotte). Le marqueur est nécessaire : sans lui, `chage -d 0` s'appliquerait à nouveau à chaque `nixos-rebuild switch`, redemandant un mot de passe à chaque redémarrage.
## Pourquoi deux repos
@@ -417,7 +417,7 @@ sudo systemctl start nixos-upgrade.service
```bash
cd /etc/nixos
sudo git pull
sudo nixos-rebuild switch --flake .#usagers
sudo nixos-rebuild switch --flake .#nixos
```
Le `git pull` est obligatoire ici : contrairement à `nixos-upgrade.service`, ce rebuild lit les fichiers locaux de `/etc/nixos`, pas l'URL distante.
@@ -436,16 +436,16 @@ Boot BIOS et boot UEFI, sur le parc réel.
Test sur 1-2 PC réels d'abord.
PC à seulement 4 Go de RAM : le zram (`installer-base.nix`) doit suffire pour installer `usagers` (Cinnamon + Firefox + LibreOffice + VLC), mais pas testé en dessous de 12 Go pour l'instant. Si ça échoue encore sur du 4 Go réel : alléger la liste de paquets de `usagers` plutôt que d'insister sur le zram seul.
PC à seulement 4 Go de RAM : le zram (`installer-base.nix`) doit suffire pour installer `nixos` (Cinnamon + Firefox + LibreOffice + VLC), mais pas testé en dessous de 12 Go pour l'instant. Si ça échoue encore sur du 4 Go réel : alléger la liste de paquets de `nixos` plutôt que d'insister sur le zram seul.
```bash
nix flake check --no-build # évalue usagers/installer-netboot/installer-iso
nix flake check --no-build # évalue nixos/installer-netboot/installer-iso
nix flake check --no-build --impure # inclut pxe-server (lit /etc/nixos, réel sur le serveur seulement)
nix build .#nixosConfigurations.usagers.config.system.build.toplevel --dry-run
nix build .#nixosConfigurations.nixos.config.system.build.toplevel --dry-run
nix build .#nixosConfigurations.installer-iso.config.system.build.isoImage --dry-run
```
Vérifié (WSL, testé le 2026-09-12) : `usagers` s'évalue et résout entièrement sa fermeture de paquets sans erreur. `pxe-server` échoue sans `--impure` en dehors du vrai serveur PXE (attendu, lit `/etc/nixos/hardware-configuration.nix`).
Vérifié (WSL, testé le 2026-09-12) : `nixos` s'évalue et résout entièrement sa fermeture de paquets sans erreur. `pxe-server` échoue sans `--impure` en dehors du vrai serveur PXE (attendu, lit `/etc/nixos/hardware-configuration.nix`).
**Ce que ces commandes ne couvrent pas** : elles vérifient que la config s'évalue et que les paquets existent, pas que le poste installé fonctionne réellement (Wi-Fi, wallpaper, LightDM, avatar...). Seul un test sur machine réelle (étape 8 plus haut) le confirme.
@@ -494,7 +494,7 @@ Aucun paquet à installer manuellement : `enable = true` suffit dans les deux ca
Après édition :
```bash
sudo nixos-rebuild switch --flake .#usagers
sudo nixos-rebuild switch --flake .#nixos
```
---