echo "aliases=$suite"
fi
case "$arch" in
- armel|armhf|i386|powerpc|s390|sparc)
+ armel|armhf|i386|mips|mipsel|powerpc|s390|sparc)
echo "personality=linux32"
;;
esac
sid)
genschrootconf "experimental" "$arch" "$target"
;;
- #experimental|jessie)
experimental)
:
;;
if [ -z "$extra" ] && [ -z "$ubuntu" ]; then
genschrootconf "$suite" "$arch" "$target" "backports"
[ -n "$buildd" ] && genschrootconf "$suite" "$arch" "$target" "backports-sloppy"
+ [ -n "$buildd" ] && genschrootconf "$suite" "$arch" "$target" "kfreebsd"
[ -n "$buildd" ] && genschrootconf "$suite" "$arch" "$target" "lts"
[ -n "$buildd" ] && genschrootconf "$suite" "$arch" "$target" "proposed-updates"
[ -n "$buildd" ] && genschrootconf "$suite" "$arch" "$target" "security"
if [ -e /etc/schroot/dsa/default-mirror ]; then
mirror=$(cat /etc/schroot/dsa/default-mirror )
fi
-mirror="${mirror:-http://cdn.debian.net/debian}"
+mirror="${mirror:-http://ftp.debian.org/debian}"
configonly=""
force=""
basedir="/srv/chroot"
personality="dsa"
sbuildnames=""
ubuntu=""
-groupuser="Debian,guest"
+groupuser="Debian,guest,d-i"
grouproot=""
+include="apt,fakeroot"
users=""
usersroot=""
bare=""
trap do_cleanup EXIT
buildd=""
-while getopts "a:b:Bcd:Dfg:hKk:m:o:O:p:r:sS:u" OPTION
+while getopts "a:b:Bcd:Dfg:hI:Kk:m:o:O:p:r:sS:u" OPTION
do
case $OPTION in
a)
bare="1"
groupuser=""
grouproot=""
- users="buildd"
- usersroot="buildd"
+ users="buildd,buildd2"
+ usersroot="buildd,buildd2"
personality="buildd"
suffix="sbuild"
;;
usage
exit 0
;;
+ I)
+ include="$include,$OPTARG"
+ ;;
K)
keep="4"
;;
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)."
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
set -x
debootstrap \
--keyring "$keyring" \
- --include="apt" \
+ --include="$include" \
--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"
chroot "$rootdir" apt-get update
-chroot "$rootdir" apt-get install -y --force-yes --no-install-recommends policyrcd-script-zg2
+chroot "$rootdir" apt-get install -y --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 "$bare" ] && [ -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 build-essential
-[ -z "$bare" ] && chroot "$rootdir" apt-get install -y --force-yes --no-install-recommends zsh less vim fakeroot devscripts gdb
+[ -z "$bare" ] && [ -z "$ubuntu" ] && chroot "$rootdir" apt-get install -y --no-install-recommends locales-all
+chroot "$rootdir" apt-get install -y --no-install-recommends build-essential
+[ -z "$bare" ] && chroot "$rootdir" apt-get install -y --no-install-recommends zsh 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/dev" 2>/dev/null || true