fix: set -e dans install.sh, DNS DHCP standalone, loginShellInit

This commit is contained in:
2026-09-09 10:03:58 +02:00
parent dd2f9cd665
commit 213ba07cfe
3 changed files with 15 additions and 6 deletions
+6 -3
View File
@@ -1,7 +1,10 @@
# Pas de shebang ici : ce fichier est injecté comme corps de script par
# pkgs.writeShellScriptBin dans installer-base.nix (qui ajoute déjà
# `#!...` + `set -euo pipefail`).
#
# pkgs.writeShellScriptBin dans installer-base.nix (qui ajoute juste
# `#!...`, PAS de mode strict — d'où le `set` explicite ci-dessous : sans
# lui, une erreur (ex: DNS indisponible) n'arrête pas le script, qui
# continuait jusqu'au reboot final en masquant l'échec.
set -euo pipefail
# Installeur unique pour les deux repos :
# - branche "flotte" -> nixos_fleet (public, jamais chiffré)
# - branche "utilisateur nommé" -> nixos_users (privé, chiffrement au choix)
+2 -2
View File
@@ -40,8 +40,8 @@ in
services.getty.autologinUser = lib.mkForce "root";
users.users.root.password = lib.mkForce "";
environment.etc."profile.d/00-fleet-installer.sh".text = ''
if [ "$(tty)" = "/dev/tty1" ] && [ -z "$FLEET_INSTALLER_RAN" ]; then
programs.bash.loginShellInit = ''
if [ "$(tty)" = "/dev/tty1" ] && [ -z "''${FLEET_INSTALLER_RAN:-}" ]; then
export FLEET_INSTALLER_RAN=1
${installScript}/bin/fleet-install
fi
+7 -1
View File
@@ -81,7 +81,13 @@ in
}
// (
if standaloneDhcp then
{ "dhcp-range" = [ "192.168.1.50,192.168.1.150,12h" ]; } # à adapter au réseau cible
{
"dhcp-range" = [ "192.168.1.50,192.168.1.150,12h" ]; # à adapter au réseau cible
# port = 0 désactive le DNS de dnsmasq : sans ça, les PC installés
# via DHCP de ce serveur n'ont aucun serveur DNS fonctionnel et ne
# peuvent résoudre ni GitHub ni Gitea pendant l'install.
"dhcp-option" = [ "option:dns-server,1.1.1.1,9.9.9.9" ];
}
else
{ "dhcp-range" = [ "192.168.1.0,proxy" ]; } # à adapter au sous-réseau existant
);