#!/bin/sh
# Must be root to run this
set -e
DEBVERSION=sid
PRISTINE=/var/local/cache/pristine/$DEBVERSION
TOPDIR=`pwd`
BACKING=$TOPDIR/build/env/backing
MOUNT=$TOPDIR/build/env/mount
mkdir -p $TOPDIR/build/env
mkdir $BACKING $MOUNT
touch $BACKING/please-trash-this-system
mkdir -p $BACKING/etc
echo "pristine" > $BACKING/etc/debian_chroot
cp -v policy-rc.d $BACKING/etc/policy-rc.d
mkdir -p $BACKING/var/cache/apt/archives
cp -v build/aptcache/$DEBVERSION/* $BACKING/var/cache/apt/archives || true
cp -av action $BACKING
#hg -R ../mercurial-server archive -r default $BACKING/action/mercurial-server
#( cd ../mercurial-server && \
# hg st -mac0n | cpio -p -0 -d $BACKING/action/mercurial-server )
cp ../mercurial-server/build/debian/mercurial-server_1.0-1_all.deb $BACKING/action
unionfs-fuse -o cow -o allow_other,suid,dev $BACKING=RW:$PRISTINE=RO $MOUNT
#mount --bind /dev "$MOUNT/dev"
#mount --bind /dev/pts "$MOUNT/dev/pts"
mount -t proc proc $MOUNT/proc
chroot $MOUNT ./action/go
umount $MOUNT/proc
umount $MOUNT
#cat $BACKING/action/results
rm -rf build/env