on non-debian machines (resp. those without debootstrap), generate
authorEnrico Scholz <enrico.scholz@informatik.tu-chemnitz.de>
Sat, 29 Oct 2005 12:09:09 +0000 (12:09 +0000)
committerEnrico Scholz <enrico.scholz@informatik.tu-chemnitz.de>
Sat, 29 Oct 2005 12:09:09 +0000 (12:09 +0000)
'$DEBOOTSTRAP_DIR/arch' with the current architecture [reported by
Nicolas Costes; http://savannah.nongnu.org/bugs/?func=detailitem&item_id=14589]

git-svn-id: http://svn.linux-vserver.org/svn/util-vserver/trunk@2212 94cd875c-1c1d-0410-91d2-eb244daf1a30

util-vserver/scripts/vserver-build.debootstrap

index a58c27c..af0cc93 100644 (file)
@@ -66,7 +66,7 @@ ${tmp}..."
                $_CAT <<EOF >&2
 ERROR: Could not download the debootstrap package from
 
-   $dst
+   $tmp
 
 Usually, this means that Debian released a new version which is unknown
 to util-vserver and removed the known ones. To fix this, go to
@@ -91,6 +91,18 @@ EOF
         tar xzf data.tar.gz
         export DEBOOTSTRAP_DIR=`pwd`/usr/lib/debootstrap
         DEBOOTSTRAP=`pwd`/usr/sbin/debootstrap
+
+       local arch
+       arch=$(uname -i 2>/dev/null) || \
+           arch=$(arch 2>/dev/null) ||
+           arch=
+
+       ## Wash the calculated architecture
+       case $arch in
+           (i?86|athlon)       arch=i386;;
+       esac
+
+       test -z "$arch" || echo "$arch" >$DEBOOTSTRAP_DIR/arch
     }
     popd &>/dev/null
 
@@ -114,11 +126,11 @@ init
 
 while true; do
     case "$1" in
-       -d)             DISTRIBUTION=$2; shift;;
-       -m)             mirror=$2;       shift;;
-       --debug)        set -x;;
-       --)             shift; break ;;
-       *)              echo "vserver-build.debootstrap: internal error: unrecognized option '$1'" >&2
+       (-d)            DISTRIBUTION=$2; shift;;
+       (-m)            mirror=$2;       shift;;
+       (--debug)       set -x;;
+       (--)            shift; break ;;
+       (*)             echo "vserver-build.debootstrap: internal error: unrecognized option '$1'" >&2
                        exit 1
                        ;;
     esac