File instlux-save-boot-timeout.patch of Package instlux
--- instlux/src/instlux_template_en.nsi
+++ instlux/src/instlux_template_en.nsi
@@ -208,6 +208,10 @@
lbl_WinNT:
File /oname=$c\grldr "grldr"
+ ; save timeout
+ ReadINIStr $0 "$c\boot.ini" "boot loader" "timeout"
+ WriteINIStr "$c\boot.save" "boot loader" "timeout" $0
+ ; write new values
SetFileAttributes "$c\boot.ini" NORMAL
WriteINIStr "$c\boot.ini" "boot loader" "timeout" "30"
WriteINIStr "$c\boot.ini" "operating systems" "$c\grldr" '"BOOT_TITLE"'
@@ -438,6 +442,11 @@
Delete /REBOOTOK "$c\grldr"
SetFileAttributes "$c\boot.ini" NORMAL
DeleteINIStr "$c\boot.ini" "operating systems" "$c\grldr"
+ ; restore timeout
+ DeleteINIStr "$c\boot.ini" "boot loader" "timeout"
+ ReadINIStr $0 "$c\boot.save" "boot loader" "timeout"
+ Delete "$c\boot.save"
+ WriteINIStr "$c\boot.ini" "boot loader" "timeout" $0
SetFileAttributes "$c\boot.ini" SYSTEM|HIDDEN
Goto lbl_Finish