diff --git a/scripts/archive.tar.gz b/scripts/archive.tar.gz index 48a8a4b..952692e 100644 Binary files a/scripts/archive.tar.gz and b/scripts/archive.tar.gz differ diff --git a/scripts/docker_install.sh b/scripts/docker_install.sh new file mode 100644 index 0000000..678d34c --- /dev/null +++ b/scripts/docker_install.sh @@ -0,0 +1,132 @@ +#!/bin/bash +NVM="$HOME/.nvm" +NVM_VERSION="stable" +DEV="$HOME/dev" +LIVE="$HOME/live" +STAGING="$HOME/staging" +SWAP="/swapfile" +PKG_MANAGER=$( command -v yum || command -v apt-get ) || echo "Neither yum nor apt-get found" +PKG_DEVICE=$(basename $PKG_MANAGER) +pidof systemd && SYSTEMDCALL=1 || SYSTEMDCALL=0 +UPDATE=no +DATABASE=no +NGINX=no + +RED=`tput setaf 1` +GREEN=`tput setaf 2` +YELLOW=`tput setaf 3` +PURPLE=`tput setaf 5` +RESET=`tput sgr0` + + +fancy_echo() { + local fmt="$1"; shift + + # shellcheck disable=SC2059 + printf "\n$fmt\n" "$@" +} + +for i in "$@" +do +case $i in + -u|--update) + UPDATE=YES + shift # past argument=value + ;; + -d|--database) + DATABASE=YES + shift # past argument=value + ;; + -n|--nginx) + NGINX=YES + shift # past argument=value + ;; + -i|--install) + UPDATE=YES + # NGINX=YES + # DATABASE=YES + shift # past argument=value + ;; + --default) + DEFAULT=YES + shift # past argument with no value + ;; + *) + # unknown option + ;; +esac +done + + +fancy_echo "${YELLOW}Installing PI ...${RESET}" +## Update initial packages + +read -s -p "Enter Password for sudo: " sudoPW + +fancy_echo "${RED}Cleaning...${RESET}" + +if [ ! -d "$DEV" ]; then + mkdir -p $DEV +fi + +if [ ! -d "$LIVE" ]; then + mkdir -p $LIVE +fi + +if [ ! -d "$STAGING" ]; then + rm -rf $STAGING + mkdir -p $STAGING +else + mkdir -p $STAGING +fi + + +if [[ $UPDATE = "YES" ]]; then +fancy_echo "${PURPLE}Updating system packages${RESET}" + + if [ $(basename $PKG_MANAGER) = "yum" ]; then + echo $sudoPW | sudo -S yum --assumeyes upgrade + echo $sudoPW | sudo -S yum --assumeyes install deltarpm psmisc + echo $sudoPW | sudo -S yum --assumeyes install git make automake gcc gcc-c++ kernel-devel nginx htop screen wget curl pi-bluetooth + else + echo $sudoPW | sudo -S echo udev hold | dpkg --set-selections + echo $sudoPW | sudo -S echo initscripts hold | dpkg --set-selections + echo $sudoPW | sudo -S apt-get -y -q --force-yes update + echo $sudoPW | sudo -S apt-get -y -q --force-yes upgrade + echo $sudoPW | sudo -S DEBIAN_FRONTEND=noninteractive apt-get install -y -q -f build-essential dnsutils git xorg openbox libasound2 libnss3-dev libxss1 libatk-bridge2.0-0 libgtk2.0-common libgtk-3-0 + echo $sudoPW | sudo -S apt-get -y -q --force-yes clean + fi +fi + +# set up and install swap file +if [[ ! -f "$SWAP" ]]; then + fancy_echo "${YELLOW}Setting up swapfile...${RESET}" + + echo $sudoPW | sudo -S fallocate -l 1G $SWAP + echo $sudoPW | sudo -S chmod 600 $SWAP + echo $sudoPW | sudo -S mkswap $SWAP + echo $sudoPW | sudo -S swapon $SWAP + + add /swapfile/swapfile none swap defaults 0 0 to /etc/fstab +fi + +# setup node and npm +if [ ! -d "$NVM" ]; then +fancy_echo "${YELLOW}Installing Node...${RESET}" + + # Will enter here if $DIRECTORY exists, even if it contains spaces + + curl -o- https://raw.githubusercontent.com/creationix/nvm/v0.33.11/install.sh | bash + export NVM_DIR=$NVM + [ -s "$NVM_DIR/nvm.sh" ] && . "$NVM_DIR/nvm.sh" # This loads nvm + + source $HOME/.bashrc + source $NVM/nvm.sh + nvm install $NVM_VERSION +fi + +if [[ $UPDATE = "YES" ]]; then + fancy_echo "${YELLOW}Installing Node Global Packages...${RESET}" + npm install -g gulp bower pm2@latest npm-check npm-install-missing + pm2 update +fi diff --git a/scripts/focker.sh b/scripts/focker.sh new file mode 100755 index 0000000..c2c942e --- /dev/null +++ b/scripts/focker.sh @@ -0,0 +1,10 @@ +#!/usr/bin/env bash + + +echo udev hold | dpkg --set-selections +echo initscripts hold | dpkg --set-selections +apt-get -y update +DEBIAN_FRONTEND=noninteractive apt-get install -y -q -f build-essential dnsutils git xorg openbox libasound2 libnss3-dev libxss1 libatk-bridge2.0-0 libgtk2.0-common libgtk-3-0 +apt-get clean -q + +