fancier setup script

This commit is contained in:
Nick Sweeting 2017-06-30 02:44:57 -05:00
parent 2d3f67dd9d
commit 8fb2ee8aca

View file

@ -1,46 +1,87 @@
#!/bin/bash
# Bookmark Archiver Setup Script
# Nick Sweeting 2017 | MIT License
# https://github.com/pirate/bookmark-archiver/issues
echo "[i] Installing bookmark-archiver dependencies. This script may ask for your password in order to install the following:"
echo " - Google Chrome (see README for Chromium instructions, yay open source)"
echo "[i] Installing bookmark-archiver dependencies. 📦"
echo ""
echo " You may be prompted for a password in order to install the following dependencies:"
echo " - Chromium Browser (see README for Google-Chrome instructions instead)"
echo " - python3"
echo " - wget"
echo " - curl"
echo ""
echo " You may follow manual setup instructions in README.md instead if you prefer not to run an unknown script"
echo " Press Ctrl+C in the next 5 seconds to cancel, or don't do anything to continue..."
sleep 5
echo " You may follow Manual Setup instructions in README.md instead if you prefer not to run an unknown script."
echo " Press enter to continue, or Ctrl+C to cancel..."
read
echo ""
if which apt-get; then
# On Linux:
echo "[+] Adding Google Chrome apt signing key"
wget -q -O - https://dl-ssl.google.com/linux/linux_signing_key.pub | sudo apt-key add -
echo "[+] Adding Google Chrome apt source repo"
sudo sh -c 'echo "deb [arch=amd64] http://dl.google.com/linux/chrome/deb/ stable main" >> /etc/apt/sources.list.d/google-chrome.list'
echo "[+] Updating repo list"
apt update
echo "[+] Installing Google-Chrome-Beta, python3, wget"
apt install google-chrome-beta python3 wget
elif which brew; then
if which apt-gets > /dev/null; then
echo "[+] Updating apt repos..."
apt update -q
if which google-chrome; then
echo "[i] google-chrome already installed, using existing installation."
echo "[i[ You already have google-chrome installed, if you dont' want to use it, press Ctrl+C and follow the Manual Setup instructions"
echo "[+] Linking $(which google-chrome) -> /usr/bin/chromium-browser (press Ctrl+C to cancel in the next 3 sec...)"
sleep 3
sudo ln -s "$(which google-chrome)" /usr/bin/chromium-browser
elif which chromium-browser; then
echo "[i] chromium-browser already installed, using existing installation."
else
echo "[+] Installing chromium-browser..."
apt install chromium-browser -y
fi
echo "[+] Installing python3, wget, curl..."
apt install python3 wget curl
# On Mac:
echo "[+] Installing Google-Chrome-Canary, python3, wget"
brew install Caskroom/versions/google-chrome-canary wget python3 # or chromium, up to you
echo "[+] Linking Google-Chrome-Canary to /usr/local/bin/google-chrome"
echo -e '#!/bin/bash\n/Applications/Google\ Chrome\ Canary.app/Contents/MacOS/Google\ Chrome\ Canary "$@"' > /usr/local/bin/google-chrome
chmod +x /usr/local/bin/google-chrome
elif which brews > /dev/null; then
if ls /Applications/Google\ Chrome.app > /dev/null; then
echo "[+] Linking /usr/local/bin/google-chrome -> /Applications/Google Chrome.app"
echo -e '#!/bin/bash\n/Applications/Google\ Chrome.app/Contents/MacOS/Google\ Chrome "$@"' > /usr/local/bin/chromium-browser
chmod +x /usr/local/bin/chromium-browser
elif which chromium-browser; then
echo "[+] Linking /usr/local/bin/chromium-browser -> /Applications/Chromium.app"
echo -e '#!/bin/bash\n/Applications/Chromium.app/Contents/MacOS/Chromium "$@"' > /usr/local/bin/chromium-browser
chmod +x /usr/local/bin/chromium-browser
else
echo "[+] Installing chromium-browser..."
brew cask install chromium
echo "[+] Linking /usr/local/bin/chromium-browser -> /Applications/Chromium.app"
echo -e '#!/bin/bash\n/Applications/Chromium.app/Contents/MacOS/Chromium "$@"' > /usr/local/bin/chromium-browser
chmod +x /usr/local/bin/chromium-browser
fi
echo "[+] Installing python3, wget, curl (ignore 'already installed' warnings)..."
brew install python3 wget curl
else
echo "[X] Could not find aptitude or homebrew!"
echo ""
echo " If you're on macOS, make sure you have homebrew installed: https://brew.sh/"
echo " If you're on Ubuntu/Debian, make sure you have apt installed: https://help.ubuntu.com/lts/serverguide/apt.html"
echo " (those are the only currently supported systems)"
echo ""
echo "See the README.md for manual setup instructions."
exit 1
fi
# Check:
google-chrome --version && which wget && which python3 && which curl && echo "[√] All dependencies installed." && exit 0
echo ""
echo "[*] Checking installed versions:"
which chromium-browser &&
chromium-browser --version &&
which wget &&
which python3 &&
which curl &&
echo "[√] All dependencies installed. ✅" &&
exit 0
echo "[X] Failed to install some dependencies"
echo " Try the manual setup instructions in the README, or open an issue on github to get help: https://github.com/pirate/bookmark-archiver/issues"
echo ""
echo "[X] Failed to install some dependencies! ‼️"
echo " - Try the Manual Setup instructions in the README.md"
echo " - Try the Troubleshooting: Dependencies instructions in the README.md"
echo " - Open an issue on github to get help: https://github.com/pirate/bookmark-archiver/issues"
exit 1