X-Git-Url: http://git.grml.org/?a=blobdiff_plain;f=scripts%2Flive-bottom%2F24preseed;h=60b9be6035be6318ab87126932346bf70a0d2c6f;hb=613393eef8be213c8859b2d7a2f6334cb82bd52b;hp=a8f5a46070fc9d52cdb09b2d8d000187bc23442d;hpb=19fc3aa4ba1e94799fb4b49d07efbb5f98447a66;p=live-boot-grml.git diff --git a/scripts/live-bottom/24preseed b/scripts/live-bottom/24preseed index a8f5a46..60b9be6 100755 --- a/scripts/live-bottom/24preseed +++ b/scripts/live-bottom/24preseed @@ -26,19 +26,23 @@ then fi . /scripts/live-functions +load_confmodule -log_begin_msg "Loading preseed file..." +log_begin_msg "Loading preseed file" # live-initramfs script if [ -e /preseed.cfg ] then - chroot /root debconf-set-selections < /preseed.cfg + live-set-selections /preseed.cfg fi -if [ -f "/root/${LOCATION}" ] +if [ -n "${LOCATIONS}" ] then - chroot /root debconf-set-selections < "/root/${LOCATION}" + for item in ${LOCATIONS} + do + live-set-selections "/root$item" + done fi if [ -n "${PRESEEDS}" ] @@ -52,12 +56,16 @@ then done fi -reply="$(echo "GET preseed/early_command" | chroot /root debconf-communicate -fnoninteractive live-initramfs)" - -if [ "${reply#0 }" != "${reply}" ] +if db_get preseed/early_command && [ "$RET" ] then - reply="${reply#0 }" - sh -c "${reply}" + echo 'APT::Keep-Fds { "3"; "4"; };' > /root/etc/apt/apt.conf.d/00-early-debconf + DEBIAN_FRONTEND=passthrough \ + DEBCONF_READFD=3 \ + DEBCONF_WRITEFD=4 \ + DEBCONF_DB_REPLACE=configdb \ + DEBCONF_DB_OVERRIDE='Pipe{infd:none outfd:none}' \ + sh -c "$RET" + rm -f /root/etc/apt/apt.conf.d/00-early-debconf fi # Clear out debconf database backup files to save memory.