diff --git a/VERSION b/VERSION index 10c0880..6a126f4 100644 --- a/VERSION +++ b/VERSION @@ -1 +1 @@ -1.7.4 +1.7.5 diff --git a/changelog.json b/changelog.json index 60845a2..77b73fd 100644 --- a/changelog.json +++ b/changelog.json @@ -1,5 +1,18 @@ { "versions": [ + { + "version": "1.7.5", + "date": "2026-05-12", + "changes": { + "features": [], + "improvements": [], + "fixes": [ + "update_firmware.sh: chmod +x avant d'executer setup_services.sh (le bit executable est strippé par git config core.fileMode=false, donc le check -x echouait systematiquement et Step 3c logguait 'not found or not executable, skipping')" + ], + "compatibility": [] + }, + "notes": "Suite v1.7.4: le self-heal Step 3c n'etait pas reellement actif a cause d'un check -x trop strict. Cette version corrige le probleme en chmod +x avant l'execution, comme le fait deja installation_part2.sh." + }, { "version": "1.7.4", "date": "2026-05-12", diff --git a/update_firmware.sh b/update_firmware.sh index 6cf2a35..edae6b5 100755 --- a/update_firmware.sh +++ b/update_firmware.sh @@ -112,13 +112,17 @@ fi # masked, or never installed gets recreated from the canonical source. # Idempotent: rewriting an existing service file with the same content # is a no-op for already-running services. +# Note: git config core.fileMode=false strips the executable bit, so we +# chmod +x explicitly (same pattern as installation_part2.sh). print_status "" print_status "Step 3c: Reconciling systemd services with setup_services.sh..." -if [ -x /var/www/nebuleair_pro_4g/services/setup_services.sh ]; then - sudo /var/www/nebuleair_pro_4g/services/setup_services.sh +SETUP_SERVICES=/var/www/nebuleair_pro_4g/services/setup_services.sh +if [ -f "$SETUP_SERVICES" ]; then + sudo chmod +x "$SETUP_SERVICES" + sudo "$SETUP_SERVICES" check_status "Setup services reconciliation" else - print_status "⚠ setup_services.sh not found or not executable, skipping" + print_status "⚠ setup_services.sh not found, skipping" fi # Step 4: Restart critical services if they exist