Commit 711db935 authored by Joshua Tauberer's avatar Joshua Tauberer

bootstrap: apt was mangling stdin

When executed "cat bootstrap.sh | bash", apt-get mangled stdin. The script would terminate at the end of the if block containing apt-get (that seems to be as much as bash read from the pipe) and the remainder of the script was output to the console. This was very weird.

Ensuring that apt-get and git have their stdins redirected from /dev/null seems to fix the problem.

see #224
parent f42a1c5a
...@@ -16,27 +16,34 @@ if [[ $EUID -ne 0 ]]; then ...@@ -16,27 +16,34 @@ if [[ $EUID -ne 0 ]]; then
exit exit
fi fi
# Go to root's home directory.
cd
# Clone the Mail-in-a-Box repository if it doesn't exist. # Clone the Mail-in-a-Box repository if it doesn't exist.
if [ ! -d mailinabox ]; then if [ ! -d mailinabox ]; then
echo Installing git . . . echo Installing git . . .
apt-get -q -q install -y git DEBIAN_FRONTEND=noninteractive apt-get -q -q install -y git < /dev/null
echo
echo Downloading Mail-in-a-Box . . . echo Downloading Mail-in-a-Box . . .
git clone -b $TAG --depth 1 https://github.com/mail-in-a-box/mailinabox 2> /dev/null git clone \
cd mailinabox -b $TAG --depth 1 \
https://github.com/mail-in-a-box/mailinabox \
$HOME/mailinabox \
< /dev/null 2> /dev/null
echo
fi
# Change directory to it.
cd $HOME/mailinabox
# If it does exist, update it. # Update it.
else if [ "$TAG" != `git describe` ]; then
echo Updating Mail-in-a-Box to $TAG . . . echo Updating Mail-in-a-Box to $TAG . . .
cd mailinabox
git fetch git fetch
if ! git checkout -q $TAG; then if ! git checkout -q $TAG; then
echo "Update failed. Did you modify something in `pwd`?" echo "Update failed. Did you modify something in `pwd`?"
exit exit
fi fi
echo
fi fi
# Start setup script. # Start setup script.
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment