sysupgrade: create 10_disable_services w/ fixed modified time

Every time "sysupgrade -b -" runs it would generate a new
(synthetic) "/etc/uci-defaults/10_disable_services" file with
the current time as the modified time.  This unfortunately
creates a non-deterministic tarball, so if you run a cron job
to save your state, you don't have a trivial way of seeing if
it changed or not without unpacking the archive, deleting this
file, and comparing the entire directory tree to the previous
backup.

Fixes: #16145
Fixes: 0ad062a21b ("base-files: sysupgrade: include uci-defaults script disabling services #2")
Signed-off-by: Philip Prindeville <philipp@redfish-solutions.com>
This commit is contained in:
Philip Prindeville 2024-08-11 15:28:01 -06:00
parent 30cdc48360
commit c6c29d7b38

View file

@ -278,7 +278,7 @@ create_backup_archive() {
fi fi
done done
disabled="$disabled\nexit 0" disabled="$disabled\nexit 0"
tar_print_member "/etc/uci-defaults/10_disable_services" "$(echo -e $disabled)" || ret=1 tar_print_member "/etc/uci-defaults/10_disable_services" "$(echo -e $disabled)" "$(date -r /etc/rc.d "+%s")" || ret=1
fi fi
# Part of archive with installed packages info # Part of archive with installed packages info