X-Git-Url: https://git.donarmstrong.com/?a=blobdiff_plain;f=modules%2Fschroot%2Ffiles%2Fsetup-dchroot;h=78e3f2f59bdcd8e7fca7b5c107dc797bdbb4753c;hb=37182cf8f36563bebe19ab80e7bd320612fd8bde;hp=6169920bcb3a3f687ff60d78be530d4e54a3fe9d;hpb=10ebe5a2c6a606cd9ad14c0506a02021e1a7184c;p=dsa-puppet.git diff --git a/modules/schroot/files/setup-dchroot b/modules/schroot/files/setup-dchroot index 6169920b..78e3f2f5 100755 --- a/modules/schroot/files/setup-dchroot +++ b/modules/schroot/files/setup-dchroot @@ -254,7 +254,17 @@ fi suite="$1"; shift tuple="${suite}_${arch}" -builddir=${builddir:-$basedir} +if [ -z "${builddir:-}" ]; then + builddir=${builddir:-$basedir} + for u in schroot-unpack unpack; do + # if one of these directories exists and is on a different filesystem, prefer it. + candidate="$builddir/$u" + if [ -e "$candidate" ] && + [ "$(stat -f --printf '%i\n' "$builddir" )" != "$(stat -f --printf '%i\n' "$candidate")" ]; then + builddir="$candidate" + fi + done +fi [ -d "$basedir" ] || die "Error: $basedir does not exist (or is not a directory)." [ -d "$builddir" ] || die "Error: $builddir does not exist (or is not a directory)." @@ -264,6 +274,17 @@ target="$basedir/$tuple.tar.gz" schrootconfig="/etc/schroot/chroot.d/${tuple}-$suffix" ! [ -e "$schrootconfig" ] || [ -n "$force" ] || die "Error: $schrootconfig already exists." +suite_alias="$suite" +case "$arch" in + kfreebsd-*) + case "$suite" in + jessie) + suite_alias="$suite-kfreebsd" + ;; + esac + ;; +esac + # # let's go @@ -292,7 +313,7 @@ debootstrap \ --include="apt" \ --variant=buildd \ --arch="$arch" \ - "$suite" "$rootdir" "$mirror" "$script" + "$suite_alias" "$rootdir" "$mirror" "$script" echo "$tuple" > "$rootdir/etc/debian_chroot" echo "force-unsafe-io" > "$rootdir/etc/dpkg/dpkg.cfg.d/force-unsafe-io" echo "force-confnew" > "$rootdir/etc/dpkg/dpkg.cfg.d/force-confnew"