fix: set -e dans install.sh, DNS DHCP standalone, loginShellInit
This commit is contained in:
@@ -1,7 +1,10 @@
|
|||||||
# Pas de shebang ici : ce fichier est injecté comme corps de script par
|
# Pas de shebang ici : ce fichier est injecté comme corps de script par
|
||||||
# pkgs.writeShellScriptBin dans installer-base.nix (qui ajoute déjà
|
# pkgs.writeShellScriptBin dans installer-base.nix (qui ajoute juste
|
||||||
# `#!...` + `set -euo pipefail`).
|
# `#!...`, 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 :
|
# Installeur unique pour les deux repos :
|
||||||
# - branche "flotte" -> nixos_fleet (public, jamais chiffré)
|
# - branche "flotte" -> nixos_fleet (public, jamais chiffré)
|
||||||
# - branche "utilisateur nommé" -> nixos_users (privé, chiffrement au choix)
|
# - branche "utilisateur nommé" -> nixos_users (privé, chiffrement au choix)
|
||||||
|
|||||||
@@ -40,8 +40,8 @@ in
|
|||||||
services.getty.autologinUser = lib.mkForce "root";
|
services.getty.autologinUser = lib.mkForce "root";
|
||||||
users.users.root.password = lib.mkForce "";
|
users.users.root.password = lib.mkForce "";
|
||||||
|
|
||||||
environment.etc."profile.d/00-fleet-installer.sh".text = ''
|
programs.bash.loginShellInit = ''
|
||||||
if [ "$(tty)" = "/dev/tty1" ] && [ -z "$FLEET_INSTALLER_RAN" ]; then
|
if [ "$(tty)" = "/dev/tty1" ] && [ -z "''${FLEET_INSTALLER_RAN:-}" ]; then
|
||||||
export FLEET_INSTALLER_RAN=1
|
export FLEET_INSTALLER_RAN=1
|
||||||
${installScript}/bin/fleet-install
|
${installScript}/bin/fleet-install
|
||||||
fi
|
fi
|
||||||
|
|||||||
@@ -81,7 +81,13 @@ in
|
|||||||
}
|
}
|
||||||
// (
|
// (
|
||||||
if standaloneDhcp then
|
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
|
else
|
||||||
{ "dhcp-range" = [ "192.168.1.0,proxy" ]; } # à adapter au sous-réseau existant
|
{ "dhcp-range" = [ "192.168.1.0,proxy" ]; } # à adapter au sous-réseau existant
|
||||||
);
|
);
|
||||||
|
|||||||
Reference in New Issue
Block a user