X-Git-Url: http://git.grml.org/?a=blobdiff_plain;f=scripts%2Flive-bottom%2F24preseed;h=85c6494406ffd820838cce08b97e9e32a37aecfe;hb=9eb2933053120a89ac5c332a45e989379b8f8ad1;hp=1e80a17369c5e5e7c962c5f23c8bddb94482bd13;hpb=ccea277caf476cdfef4c0f953df5a97062d8be42;p=live-boot-grml.git diff --git a/scripts/live-bottom/24preseed b/scripts/live-bottom/24preseed index 1e80a17..85c6494 100755 --- a/scripts/live-bottom/24preseed +++ b/scripts/live-bottom/24preseed @@ -18,26 +18,54 @@ case "${1}" in ;; esac -# live-initramfs header +# live-boot header + +if [ -n "${NOPRESEED}" ] +then + exit 0 +fi . /scripts/live-functions -log_begin_msg "Loading preseed file..." +log_begin_msg "Loading preseed file" -# live-initramfs script +# live-boot script -if [ -f "/root/${LOCATION}" ]; then - chroot /root debconf-set-selections < "/root/${LOCATION}" +if [ -e /preseed.cfg ] +then + chroot /root debconf-set-selections < /preseed.cfg fi -if [ -n "${PRESEEDS}" ]; then - for preseed in ${PRESEEDS}; do - question="${preseed%%=*}" - value="${preseed#*=}" - live-preseed /root "${question}" "${value}" - done +if [ -n "${LOCATIONS}" ] +then + for item in ${LOCATIONS} + do + chroot /root debconf-set-selections < "/root${item}" + done +fi + +if [ -n "${PRESEEDS}" ] +then + for preseed in ${PRESEEDS} + do + question="${preseed%%=*}" + value="${preseed#*=}" + + live-preseed /root "${question}" "${value}" + done fi +reply="$(echo "GET preseed/early_command" | chroot /root debconf-communicate -fnoninteractive live-boot)" + +if [ "${reply#0 }" != "${reply}" ] +then + reply="${reply#0 }" + sh -c "${reply}" +fi + +# Clear out debconf database backup files to save memory. +rm -f /root/var/cache/debconf/*.dat-old + log_end_msg exit 0