commit 5d889ee54d58a7f39c6c921710a2c46968979304 Author: Leonid Krivoshein Date: Fri Apr 5 18:12:52 2024 +0300 allow to unpack and use scripts at the initinstall.d stage diff --git a/installer/initinstall.d/27-metadata-install-scripts.sh b/installer/initinstall.d/27-metadata-install-scripts.sh index 8c4a70c..a2f87c4 100755 --- a/installer/initinstall.d/27-metadata-install-scripts.sh +++ b/installer/initinstall.d/27-metadata-install-scripts.sh @@ -12,6 +12,10 @@ if [ -f "$metadir"/install-scripts.tar ]; then tar -C "$metadir"/install-scripts -xvf "$metadir"/install-scripts.tar fi +[ -d "$metadir"/install-scripts/initinstall.d/ ] && + find "$metadir"/install-scripts/initinstall.d/ -mindepth 1 -maxdepth 1 -type f -perm -u=x \ + -exec cp -av {} "/usr/share/install2/initinstall.d/" \; + [ -d "$metadir"/install-scripts/preinstall.d/ ] && find "$metadir"/install-scripts/preinstall.d/ -mindepth 1 -maxdepth 1 -type f -perm -u=x \ -exec cp -av {} "/usr/share/install2/preinstall.d/" \; diff --git a/installer/scripts/initinstall b/installer/scripts/initinstall index e773088..06fe822 100755 --- a/installer/scripts/initinstall +++ b/installer/scripts/initinstall @@ -5,11 +5,21 @@ WITH_ACTION=1 PLYMOUTH=/bin/plymouth # Run initinstall scripts +for step in pre main; do for f in "$initinstall_dir"/*; do [ -f "$f" -a -x "$f" ] || continue + fnum="${f##*/}" + fnum="${fnum%%-*}" + [ -n "${fnum##*[!0-9]*}" ] && + [ "$fnum" -ge 0 ] 2>/dev/null && + [ "$fnum" -lt 30 ] 2>/dev/null || fnum= + [ -n "$fnum" ] && [ "$step" = pre ] || + [ -z "$fnum" ] && [ "$step" = main ] || continue + action "Running initinstall script [${f##*/}]" "$f" ||: if [ -x "$PLYMOUTH" ]; then $PLYMOUTH --update "$f" ||: fi done +done commit c2d78c87c432bf5cf94f6aad44644832e7989a26 Author: Leonid Krivoshein Date: Fri Apr 5 17:50:34 2024 +0300 whitespace diff --git a/installer/scripts/initinstall b/installer/scripts/initinstall index a657a82..e773088 100755 --- a/installer/scripts/initinstall +++ b/installer/scripts/initinstall @@ -5,11 +5,11 @@ WITH_ACTION=1 PLYMOUTH=/bin/plymouth # Run initinstall scripts -for f in "$initinstall_dir"/*; do - [ -f "$f" -a -x "$f" ] || continue + for f in "$initinstall_dir"/*; do + [ -f "$f" -a -x "$f" ] || continue - action "Running initinstall script [${f##*/}]" "$f" ||: - if [ -x "$PLYMOUTH" ]; then - $PLYMOUTH --update "$f" ||: - fi -done + action "Running initinstall script [${f##*/}]" "$f" ||: + if [ -x "$PLYMOUTH" ]; then + $PLYMOUTH --update "$f" ||: + fi + done