#!/bin/sh

set -e

BUILDDIR="${BUILDDIR:-/tmp/buildd}"

# exit if we are in the same UTS namespace as init ( != 2nd build )
[ "$(readlink /proc/1/ns/uts)" = "$(readlink /proc/self/ns/uts)" ] && exit 0

echo "I: Changing host+domainname to test build reproducibility" >&2
sed -e '/^127.0.0.1/s/$/ i-capture-the-hostname i-capture-the-hostname.i-capture-the-domain/' -i /etc/hosts
hostname i-capture-the-hostname
domainname i-capture-the-domain
echo "I: Adding a custom variable just for the fun of it..." >&2
export CAPTURE_ENVIRONMENT="I capture the environment"

echo "I: Changing /bin/sh to bash" >&2
echo "dash dash/sh boolean false" | debconf-set-selections
DEBIAN_FRONTEND=noninteractive dpkg-reconfigure dash
if [ -n "$BUILDUSERNAME" ] ; then
	echo "I: Setting $BUILDUSERNAME's login shell to /bin/bash" >&2
	usermod -s /bin/bash $BUILDUSERNAME
fi

# temporarily disable disorderfs as we have problems properly unmounting it
exit 0

# use disorderfs
if [ -x /usr/bin/disorderfs ] ; then
	echo -n "Moving $BUILDDIR to /tmp/disorderfs and mounting this as $BUILDDIR via the fuse disorderfs…"
	mknod -m 666 /dev/fuse c 10 229
	mv "$BUILDDIR" /tmp/disorderfs
	mkdir "$BUILDDIR"
	disorderfs --multi-user=yes /tmp/disorderfs "$BUILDDIR"
	echo " done."
else
	echo "Warning: disorderfs not available."
fi