Skip to content

Instantly share code, notes, and snippets.

@richardsonlima
Created March 1, 2016 20:00
Show Gist options
  • Save richardsonlima/5eae12b7be53cec78cea to your computer and use it in GitHub Desktop.
Save richardsonlima/5eae12b7be53cec78cea to your computer and use it in GitHub Desktop.
#!/bin/bash
#########################################################
# This script is intended to be run like this:
#
# curl https://domain/setup.sh | sudo bash
#
#########################################################
if [ -z "$TAG" ]; then
TAG=v0.17b
fi
# Are we running as root?
if [[ $EUID -ne 0 ]]; then
echo "This script must be run as root. Did you leave out sudo?"
exit
fi
# Clone the Mail-in-a-Box repository if it doesn't exist.
if [ ! -d $HOME/mailinabox ]; then
if [ ! -f /usr/bin/git ]; then
echo Installing git . . .
apt-get -q -q update
DEBIAN_FRONTEND=noninteractive apt-get -q -q install -y git < /dev/null
echo
fi
echo Downloading Mail-in-a-Box $TAG. . .
git clone \
-b $TAG --depth 1 \
https://github.com/richardsonlima/mailinabox \
$HOME/mailinabox \
< /dev/null 2> /dev/null
echo
fi
# Change directory to it.
cd $HOME/mailinabox
# Update it.
if [ "$TAG" != `git describe` ]; then
echo Updating Mail-in-a-Box to $TAG . . .
git fetch --depth 1 --force --prune origin tag $TAG
if ! git checkout -q $TAG; then
echo "Update failed. Did you modify something in `pwd`?"
exit
fi
echo
fi
# Start setup script.
setup/start.sh
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment