From 07af1878be1cb4e41752e29db0cda7179f007e51 Mon Sep 17 00:00:00 2001 From: Sami Samhuri Date: Sun, 22 Dec 2019 14:57:39 -0800 Subject: [PATCH] Fix and improve bootstrap script --- bin/bootstrap | 21 ++++++++++++++++----- 1 file changed, 16 insertions(+), 5 deletions(-) diff --git a/bin/bootstrap b/bin/bootstrap index 67cfc15..a827709 100755 --- a/bin/bootstrap +++ b/bin/bootstrap @@ -4,18 +4,29 @@ set -euo pipefail SWIFT_VERSION=5.1.3 -SWIFT_DIR=swift-$SWIFT_VERSION-RELEASE/swift-$SWIFT_VERSION-RELEASE-ubuntu18.04 +SWIFT_DIR=swift-$SWIFT_VERSION-RELEASE-ubuntu18.04 SWIFT_FILENAME=$SWIFT_DIR.tar.gz if [[ $(uname) = "Linux" ]]; then if which swiftc >/dev/null 2>/dev/null; then - echo "*** swift is installed: $(swift --version)" + echo "*** swift is installed: $(swift --version | head -n1)" else echo "*** installing swift" pushd $HOME - wget https://swift.org/builds/swift-$SWIFT_VERSION-release/ubuntu1804/$SWIFT_FILENAME - tar xzf $SWIFT_FILENAME - echo "export PATH=\"\$HOME/$SWIFT_DIR/usr/bin:\$PATH\"" >> $HOME/.bashrc + if [[ -e $SWIFT_FILENAME ]]; then + echo "*** $SWIFT_FILENAME exists, skipping download" + else + wget https://swift.org/builds/swift-$SWIFT_VERSION-release/ubuntu1804/swift-$SWIFT_VERSION-RELEASE/$SWIFT_FILENAME + fi + if [[ -e $SWIFT_DIR ]]; then + echo "*** $SWIFT_DIR exists, skipping extraction" + else + tar xzf $SWIFT_FILENAME + fi + if ! grep $SWIFT_DIR $HOME/.bashrc >/dev/null 2>/dev/null; then + echo "*** adding $HOME/$SWIFT_DIR/usr/bin to PATH in $HOME/.bashrc" + echo "export PATH=\"\$HOME/$SWIFT_DIR/usr/bin:\$PATH\"" >> $HOME/.bashrc + fi popd fi fi