1
0
镜像自地址 https://github.com/mail-in-a-box/mailinabox.git 已同步 2026-03-31 21:17:23 +02:00

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
这个提交包含在:
Joshua Tauberer
2014-10-05 13:32:52 -04:00
父节点 f42a1c5a74
当前提交 711db9352c

25
setup/bootstrap.sh 可执行文件 -> 普通文件
查看文件

@@ -16,27 +16,34 @@ if [[ $EUID -ne 0 ]]; then
exit
fi
# Go to root's home directory.
cd
# Clone the Mail-in-a-Box repository if it doesn't exist.
if [ ! -d mailinabox ]; then
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 . . .
git clone -b $TAG --depth 1 https://github.com/mail-in-a-box/mailinabox 2> /dev/null
cd mailinabox
git clone \
-b $TAG --depth 1 \
https://github.com/mail-in-a-box/mailinabox \
$HOME/mailinabox \
< /dev/null 2> /dev/null
# If it does exist, update it.
else
echo
fi
# Change directory to it.
cd $HOME/mailinabox
# Update it.
if [ "$TAG" != `git describe` ]; then
echo Updating Mail-in-a-Box to $TAG . . .
cd mailinabox
git fetch
if ! git checkout -q $TAG; then
echo "Update failed. Did you modify something in `pwd`?"
exit
fi
echo
fi
# Start setup script.