setup-dchroot: don't create an lts alias
[mirror/dsa-puppet.git] / modules / schroot / files / setup-dchroot
index 3ab4e5e..dec0e36 100755 (executable)
@@ -77,6 +77,7 @@ genschrootconf() {
     local arch="$1"; shift
     local target="$1"; shift
     local extra="${1:-}"; shift || true
+    local aliases=""
 
     if [ -n "$extra" ]; then
         local suite="${suite}-${extra}"
@@ -88,10 +89,20 @@ genschrootconf() {
         local name="${suite}_${arch}-dchroot"
     fi
 
+    local fullname="$name"
+    case "$arch" in
+        kfreebsd-*)
+            aliases="$name"
+            # FreeBSD only allows relatively short paths to mountpoints
+            # therefore saving a few charakters making the chroot dir fit
+            name=${name/kfreebsd-amd64/k-a}
+            name=${name/kfreebsd-i386/k-i}
+        ;;
+    esac
 
 cat << EOF
 [${name}]
-description=[${name}] Debian $suite chroot for $arch
+description=[${fullname}] Debian $suite chroot for $arch
 type=file
 file=$target
 EOF
@@ -103,10 +114,17 @@ EOF
     echo "profile=$personality"
 
     if [ "$THISARCH" = "$arch" ] && [ -z "$buildd" ]; then
-        echo "aliases=$suite"
+        if [ -z "$aliases" ] ; then
+            aliases="$suite"
+        else
+            aliases="$aliases,$suite"
+        fi
+    fi
+    if [ -n "$aliases" ] ; then
+        echo "aliases=$aliases"
     fi
     case "$arch" in
-        armel|armhf|i386|powerpc|s390|sparc)
+        armel|armhf|i386|mips|mipsel|powerpc|s390|sparc)
             echo "personality=linux32"
             ;;
     esac
@@ -122,10 +140,17 @@ EOF
         *)
             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" "lts"
-                [ -n "$buildd" ] && genschrootconf "$suite" "$arch" "$target" "proposed-updates"
-                [ -n "$buildd" ] && genschrootconf "$suite" "$arch" "$target" "security"
+                if [ -n "$buildd" ] ; then
+                    genschrootconf "$suite" "$arch" "$target" "backports-sloppy"
+                    genschrootconf "$suite" "$arch" "$target" "proposed-updates"
+                    genschrootconf "$suite" "$arch" "$target" "security"
+                    case "$arch" in
+                        kfreebsd-*)
+                            genschrootconf "$suite" "$arch" "$target" "kfreebsd"
+                            genschrootconf "$suite" "$arch" "$target" "kfreebsd-security"
+                            ;;
+                    esac
+                fi
             fi
     esac
     return 0
@@ -160,7 +185,7 @@ sbuildnames=""
 ubuntu=""
 groupuser="Debian,guest,d-i"
 grouproot=""
-include="apt"
+include="apt,fakeroot"
 users=""
 usersroot=""
 bare=""
@@ -367,6 +392,7 @@ tartmp=$(tempfile --directory "$basedir" --suffix=".tar.gz")
 cleanup+=("rm -f $tartmp")
 (
   cd "$rootdir"
+  chmod 0755 "$rootdir"
   tar caf "$tartmp" .
   if ! [ -z "$keep" ]; then
     savelog -l -c 4 "$target"