chroot_sandboxes/debian/create_environment
Jarvis Carroll 28de550295 User setup and erlang installation
A bit fiddly, but this lets us run a realistic erlang install script
from userspace, and then re-enter userspace later without wiping the
installation.
2025-05-23 21:21:16 +10:00

41 lines
898 B
Bash
Executable File

#!/bin/sh
if test `id -u` -ne 0
then
echo "$0 must be run as root."
return
fi
ROOT=test_environment
FRESH=clean_environment
if test -e "$FRESH"
then
echo "Clean debian environment found at $FRESH. Good."
else
echo "No debian environment found at $FRESH, downloading with debootstrap."
mkdir -p $FRESH
./get_debootstrap --arch i386 sid "$FRESH" http://deb.debian.org/debian/
fi
if test -e "$ROOT"
then
echo "Existing installation found at $ROOT, removing."
./destroy_environment
fi
echo "Copying $FRESH to $ROOT."
cp -r "$FRESH" "$ROOT"
echo "Initializing $ROOT."
./mountpoints
# Don't bother creating a new tmpfs. We don't want to leak files in, and we
# don't want to waste more RAM on a second tmpfs. The whole thing is
# temporary, after all.
chmod 1777 "$ROOT/tmp"
cp -r install_scripts "$ROOT/root"
chroot "$ROOT" /root/install_scripts/user_setup "$@"