view more/chroot-splice.sh @ 1432:ee0e4f2f4bdb

Fiddle with the downloads/binaries layout yet again, and update README for it.
author Rob Landley <rob@landley.net>
date Tue, 23 Aug 2011 08:21:48 -0500
parents aabc07905de3
children bb26de4dfe47
line wrap: on
line source

#!/bin/bash

# Combine a root filesystem directory and a control image into an $ARCH-specific
# chroot containing native build control files, suitable for chrooting into.

if [ $# -ne 2 ]
then
  echo 'usage: ./control-in-chroot.sh $ARCH $CONTROL_IMAGE' >&2
  exit 1
fi

# Make sure prerequisites exist

for i in "build/root-filesystem-$1" "$2"
do
  if [ ! -d "$i" ]
  then
    echo "No $i" >&2
    exit 1
  fi
done

# Zap old stuff (if any)

if [ -e "build/chroot-$1-$2" ]
then
  more/zapchroot.sh "build/chroot-$1-$2" &&
  rm -rf "build/chroot-$1-$2" ||
    exit 1
fi

# Copy root filesystem and splice in control image
cp -la "build/root-filesystem-$1" "build/chroot-$1-$2" &&
cp -la "$2/." "build/chroot-$1-$2/mnt/." ||
  exit 1

# Tar it up

# Output some usage hints

echo "export CPUS=1 HOST=$1 && cd /home && /mnt/init" &&
echo "sudo chroot build/chroot-$1-$2" "/sbin/init.sh"