Setup Computer

Historical setup notes. PickleJS archived documentation is restored.

Install Homebrew

We install most of our application

/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install.sh)"

Install Google Drive Sync and Dropbox

We need ssh keys so let's start syncing

These are automatically installed by:

brew cask install dropbox google-backup-and-sync

Takes forever to sync so...install these first:

Google Drive

Google Drive

Dropbox

Dropbox

Install XCode

Go to the App Store and install XCode. It contains a lot of command line utilities necessary later on. It takes a long time to download as well.

Install Brew Cask Software

These are GUIs that I use:

These have already been installed above:

brew cask install \
	dropbox \
	google-backup-and-sync

Not Cask

Run the following command to install software that I use:

brew cask install \
	1password \
	cyberduck \
	ccleaner \
	clickup \
	discord \
	docker \
	evernote \
	github \
	google-chrome \
	google-cloud-sdk \
	google-hangouts \
	hubstaff \
	iterm2 \
	moom \
	obs \
	postman \
	quickbooks-online \
	rescuetime \
	sequel-pro \
	sketch \
	skype \
	slack \
	spotify \
	the-clock \
	tower \
	visual-studio-code \
	whatsapp \
	zoom

brew install
hub
jq
nvm
rclone
speedtest-cli
yarn


### Command Line setup
```bash
# Setting up zsh
rm ~/.zshrc && \
ln -s "~/Google\ Drive/ALL - Toli/Config Files/.zshrc" && \
source ~/.zshrc

# Oh-my-zsh
sh -c "$(curl -fsSL https://raw.githubusercontent.com/ohmyzsh/ohmyzsh/master/tools/install.sh)"

# powerline fonts
git clone https://github.com/powerline/fonts.git --depth=1
cd fonts
./install.sh
cd ..
rm -rf fonts

# nvm
# https://raw.githubusercontent.com/creationix/nvm/v0.34.0/install.sh | bash
source ~/.zshrc
nvm install latest

# mismatch in nvm
npm config set scripts-prepend-node-path auto

# Firebase
npm i -g firebase-tools

# lerna
npm i -g lerna

# Codefresh
npm i -g codefresh

Login to CLIs

npm login
firebase login
# TODO: Setup Codefresh

Manual Downloads

Tower

App Store

Manual Setup

Config

Repos to Clone

Save Unmerged changes on old computer

setopt sh_word_split # For zsh
dirs=$(find . -maxdepth 1 -type d -execdir test -d {}/.git \; -prune -print 2>/dev/null)
for dir in $dirs; do
	originalPwd=$(pwd)
	cd $dir
    unclean=$(git status --porcelain)
    unpushed=$(git log --branches --not --remotes)
    [[ $unclean || $unpushed ]] && git add . && git commit -m "Uncommited Changes" && git push --all
	cd $originalPwd
done

Get Repos From Old Computer

function executeInAllGitDirs {
	dirs=$(find . -maxdepth 1 -type d -execdir test -d {}/.git \; -prune -print 2>/dev/null)
	for dir in $dirs; do
		originalPwd=$(pwd)
		cd $dir
		eval $1
		cd $originalPwd
	done
}

executeInAllGitDirs "echo \"git clone \$(git config --get remote.origin.url)\""

Clone on new computer

cd ~/Sites

# Personal Repos
git clone git@github.com:tolicodes/node-cli-toolkit.git
git clone git@github.com:tolicodes/activity-brainstorm.git
git clone git@github.com:tolicodes/node-api-toolkit.git
git clone git@github.com:tolicodes/dropbox-photo-viewer.git
git clone git@github.com:tolicodes/souleclipse.us.git
git clone git@github.com:tolicodes/principles.git
git clone git@github.com:hoverinc/infragen.git
git clone git@github.com:tolicodes/github-toolkit.git
git clone git@github.com:tolicodes/zoomevents.git
git clone git@github.com:tolicodes/index.git
git clone git@github.com:tolicodes/infragen.git

# Client repos
git clone git@github.com:COVID-basic-needs/JS-frontend.git
git clone git@github.com:TackleHunger/TackleHunger.git
git clone git@github.com:tolicodes/erxes.git
git clone git@github.com:tolicodes/erxes-api.git

# Hover
git clone git@github.com:hoverinc/design-pro-frontend.git
git clone git@github.com:hoverinc/ks8-applications.git
git clone git@github.com:hoverinc/website.git
git clone git@github.com:hoverinc/developers.hover.to.git
git clone git@github.com:hoverinc/hoverctl.git
git clone git@github.com:hoverinc/cd-tools.git
git clone git@github.com:hoverinc/machete.git
git clone git@github.com:hoverinc/org_analytics.git
git clone git@github.com:hoverinc/hyperion.git
git clone git@github.com:hoverinc/billing-frontend.git
git clone git@github.com:hoverinc/codefresh_qa.git
git clone git@github.com:hoverinc/design-tokens.git
git clone git@github.com:hoverinc/engineering.git
git clone git@github.com:hoverinc/hover-javascript.git
git clone git@github.com:hoverinc/picklejs.git
git clone git@github.com:hoverinc/webapps.git
git clone git@github.com:hoverinc/codefresh-test.git
git clone git@github.com:hoverinc/rfc.git
git clone git@github.com:hoverinc/developers.hover.to.git
git clone git@github.com:hoverinc/front-end-fastify-server.git
git clone git@github.com:hoverinc/hover-cli.git
git clone git@github.com:hoverinc/developers.hover.to.git
git clone git@github.com:tolicodes/public-notes.git

Yarn everything

setopt sh_word_split # For zsh
function executeInAllGitDirs {
	dirs=$(find . -maxdepth 1 -type d -execdir test -d {}/.git \; -prune -print 2>/dev/null)
	for dir in $dirs; do
		originalPwd=$(pwd)
		cd $dir
		eval $1
		cd $originalPwd
	done
}

executeInAllGitDirs "[[ \$(find . -name package.json) ]] && yarn"

Copy DotFiles

Check this

Online Tools

JS Stack

Deprecated

MacApps

curl -s 'https://api.macapps.link/en/chrome-dropbox-drive-github-sequelpro-vscode-docker-sketch-iterm-1password-cyberduck-spotify-skype-slack-whatsapp-discord' | sh

Download Links (In Case Something Breaks)