esac
}
+do_config() {
+ local tmpschrootconf=$(tempfile)
+ cleanup+=("rm -f $tmpschrootconf")
+ genschrootconf "$suite" "$arch" "$target" > "$tmpschrootconf"
+ if ! [ -e "$schrootconfig" ] || ! diff "$schrootconfig" "$tmpschrootconf" > /dev/null; then
+ mv "$tmpschrootconf" "$schrootconfig"
+ chmod 644 "$schrootconfig"
+ fi
+}
+
set -e
set -u
#
# let's go
#
-genschrootconf "$suite" "$arch" "$target" | tee "$schrootconfig"
-if [ -n "$configonly" ]; then exit 0; fi
+if [ -n "$configonly" ]; then
+ do_config
+ exit 0
+fi
rootdir=$(mktemp -d "$builddir/create-$suite-XXXXXX")
cleanup+=("rm -r $rootdir")
echo "$tuple" > $rootdir/etc/debian_chroot
chroot "$rootdir" apt-get update
-chroot "$rootdir" apt-get install -y --no-install-recommends policyrcd-script-zg2
+chroot "$rootdir" apt-get install -y --force-yes --no-install-recommends policyrcd-script-zg2
cat > "$rootdir/usr/local/sbin/policy-rc.d" << 'EOF'
#!/bin/sh
done
EOF
chmod +x "$rootdir/usr/local/sbin/policy-rc.d"
-[ -z "$ubuntu" ] && chroot "$rootdir" apt-get install -y --no-install-recommends locales-all
-chroot "$rootdir" apt-get install -y --no-install-recommends zsh build-essential less vim fakeroot devscripts gdb
+[ -z "$ubuntu" ] && chroot "$rootdir" apt-get install -y --force-yes --no-install-recommends locales-all
+chroot "$rootdir" apt-get install -y --force-yes --no-install-recommends zsh build-essential less vim fakeroot devscripts gdb
rm -f "$rootdir/etc/apt/sources.list" "$rootdir/etc/apt/sources.list.d/*"
+chroot "$rootdir" apt-get clean
umount "$rootdir/sys" || true
tartmp=$(tempfile --directory "$basedir" --suffix=".tar.gz")
cleanup+=("rm -f $tartmp")
(cd "$rootdir" && tar caf "$tartmp" . && mv "$tartmp" "$target")
+
+do_config