apply Bill Allombert's patch with fixes
[mirror/dsa-puppet.git] / modules / porterbox / files / schroot-dsa / config
index 8ee7b63..ba94f6f 100644 (file)
@@ -5,19 +5,35 @@
 ## USE: git clone git+ssh://$USER@puppet.debian.org/srv/puppet.debian.org/git/dsa-puppet.git
 ##
 
-. "/etc/schroot/default/config"
+FSTAB="/etc/schroot/dsa/fstab"
+[ -e "$FSTAB" ] || FSTAB="/etc/schroot/default/fstab"
+
+COPYFILES="/etc/schroot/dsa/copyfiles"
+[ -e "$COPYFILES" ] || COPYFILES="/etc/schroot/default/copyfiles"
+
+NSSDATABASES="/etc/schroot/dsa/nssdatabases"
+[ -e "$NSSDATABASES" ] || NSSDATABASES="/etc/schroot/default/nssdatabases"
+
 
 # added by weasel:
 if [ "$CHROOT_SESSION_PURGE" = "true" ]; then
-    case $CHROOT_NAME in
-        *-*_*-dchroot-*)
-            suitevariant_arch_tuple=${CHROOT_NAME%%-dchroot-*}
+    case $CHROOT_DESCRIPTION in
+        "["*-*_*-dchroot"]"*)
+            chroot_type="$CHROOT_DESCRIPTION"; chroot_type="${chroot_type#\[}"; chroot_type="${chroot_type%%]*}"
+            suitevariant_arch_tuple="${chroot_type%%-dchroot-*}"
             suitevariant=${suitevariant_arch_tuple%_*}
             SUITE_BASE=${suitevariant%-*}
             SUITE_VARIANT=${suitevariant##*-}
         ;;
-        *_*-dchroot-*)
-            SUITE_BASE=${CHROOT_NAME%%_*}
+        "["*_*-dchroot"]"*)
+            chroot_type="$CHROOT_DESCRIPTION"; chroot_type="${chroot_type#\[}"; chroot_type="${chroot_type%%]*}"
+            SUITE_BASE="${chroot_type%%_*}"
+        ;;
+        *)
+            if [ "$STAGE" = "setup-start" ]; then
+               echo >&2 "Unable to parse chroot description for what kind of chroot you want."
+               exit 1
+            fi
         ;;
     esac
 fi
@@ -28,3 +44,9 @@ if [ -e /etc/schroot/dsa/default-mirror ]; then
     MIRROR=$(cat /etc/schroot/dsa/default-mirror )
 fi
 MIRROR=${MIRROR:-cdn.debian.net}
+
+if [ "$(basename "$0")" = "00check" ] &&
+   [ "$CHROOT_TYPE" = "file" ] &&
+   [ "$STAGE" = "setup-start" ]; then
+        echo "Untarring chroot environment.  This might take a minute or two."
+fi