Made huge replacements more robust with envsubst instead of sed

This commit is contained in:
Raphaël Numbus
2026-01-09 16:18:59 +01:00
parent 491c56909e
commit 9d003f2cbe
5 changed files with 19 additions and 21 deletions
+8 -10
View File
@@ -606,16 +606,14 @@ nix_generation() {
cp -avu templates/nix-config/misc/* final-nix-config/etc/nixos/misc/
echo -e "\n✅ Writing correct ips to configuration.nix..."
sed -i "s|HOME_SERVER_IP|${HOME_SERVER_IP}|g" final-nix-config/etc/nixos/misc/networking.nix
sed -i "s|HOME_ROUTER_IP|${HOME_ROUTER_IP}|g" final-nix-config/etc/nixos/misc/networking.nix
sed -i "s|TARGET_INTERFACE|${TARGET_INTERFACE}|g" final-nix-config/etc/nixos/misc/networking.nix
sed -i "s|DOMAIN_NAME|${DOMAIN_NAME}|g" final-nix-config/etc/nixos/misc/mail.nix
sed -i "s|EMAIL_ADDRESS|${EMAIL_ADDRESS}|g" final-nix-config/etc/nixos/misc/mail.nix
sed -i "s|SENDER_MAIL_DOMAIN|${SENDER_EMAIL_DOMAIN}|g" final-nix-config/etc/nixos/misc/mail.nix
sed -i "s|SENDER_MAIL_ADDRESS|${SENDER_EMAIL_ADDRESS}|g" final-nix-config/etc/nixos/misc/mail.nix
sed -i "s|PODMAN_NETWORKS|${PODMAN_NETWORKS//$'\n'/\\n}|" final-nix-config/etc/nixos/misc/activation.nix
sed -i "s|TRAEFIK_NETWORKS|${TRAEFIK_NETWORKS//$'\n'/\\n}|" final-nix-config/etc/nixos/podman/traefik.nix
sed -i "s|TRAEFIK_REF_NETWORKS|${TRAEFIK_REF_NETWORKS//$'\n'/\\n}|" final-nix-config/etc/nixos/podman/traefik.nix
envsubst '$HOME_SERVER_IP $HOME_ROUTER_IP $TARGET_INTERFACE' < final-nix-config/etc/nixos/misc/networking.nix > final-nix-config/etc/nixos/misc/networking.nix.tmp
mv final-nix-config/etc/nixos/misc/networking.nix.tmp final-nix-config/etc/nixos/misc/networking.nix
envsubst '$DOMAIN_NAME $EMAIL_ADDRESS $SENDER_EMAIL_DOMAIN $SENDER_EMAIL_ADDRESS' < final-nix-config/etc/nixos/misc/mail.nix > final-nix-config/etc/nixos/misc/mail.nix.tmp
mv final-nix-config/etc/nixos/misc/mail.nix.tmp final-nix-config/etc/nixos/misc/mail.nix
envsubst '$PODMAN_NETWORKS' < final-nix-config/etc/nixos/misc/activation.nix > final-nix-config/etc/nixos/misc/activation.nix.tmp
mv final-nix-config/etc/nixos/misc/activation.nix.tmp final-nix-config/etc/nixos/misc/activation.nix
envsubst '$TRAEFIK_NETWORKS $TRAEFIK_REF_NETWORKS' < final-nix-config/etc/nixos/podman/traefik.nix > final-nix-config/etc/nixos/podman/traefik.nix.tmp
mv final-nix-config/etc/nixos/podman/traefik.nix.tmp final-nix-config/etc/nixos/podman/traefik.nix
if [[ "${TARGET_TPM}" == "true" ]]; then
sed -i "s|# boot.initrd.systemd.tpm2.enable = true;| boot.initrd.systemd.tpm2.enable = true;|" final-nix-config/etc/nixos/configuration.nix
sed -i "s|# ./disks/pcr-check.nix| ./disks/pcr-check.nix|" final-nix-config/etc/nixos/configuration.nix