-
Notifications
You must be signed in to change notification settings - Fork 0
/
bootstrap.sh
executable file
·111 lines (87 loc) · 2.68 KB
/
bootstrap.sh
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
#!/usr/bin/env bash
unameOut="$(uname -s)"
case "${unameOut}" in
Linux*) op_system=Linux;;
Darwin*) op_system=Mac;;
CYGWIN*) op_system=Cygwin;;
MINGW*) op_system=MinGw;;
*) op_system="UNKNOWN:${unameOut}"
esac
echo "Installing dev environment dependencies for: $op_system"
# Check commands available on the system
if [ $op_system = "Mac" ]
then
xcode-select --install
bash -c "$(curl -fsSL https://raw.github.com/ohmyzsh/ohmyzsh/master/tools/install.sh)"
# Curl comes preinstalled on modern OS-X and MacOs
if ! command -v brew &> /dev/null
then
# install shell tools
bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install.sh)"
echo 'eval "$(/opt/homebrew/bin/brew shellenv)"' >> /Users/${USER}/.zprofile
eval "$(/opt/homebrew/bin/brew shellenv)"
fi
# Homebrew Setup
brew tap homebrew/cask-versions
# Util Apps
brew install --cask iterm2 slack zoom microsoft-teams discord
brew install bat htop git-lfs
# Programming Languages
brew install cmake
brew install python && pip3 install -U pip
brew install go
brew install rustup && rustup-init && --rustc --version
brew install --cask dotnet
# Code Editors
brew install vim && cp "vim/.vimrc" ~/
brew install --cask visual-studio-code visual-studio android-studio
# Browsers
brew install --cask google-chrome firefox brave-browser
# Containerization and Virtualization
brew install --cask docker
brew install kubectl minikube
# Cloud Infrastructure
brew install awscli terraform
fi
if [ $op_system = "Linux" ]
then
# Try to find the systems package manager
install = ""
if command -v yum &> /dev/null
then
sudo yum update
install="yum install"
fi
if command -v apt-get &> /dev/null
then
sudo apt-get update
install="apt-get install"
fi
if command -v apt &> /dev/null
then
sudo apt update
install="apt install"
fi
if command -v pacman &> /dev/null
then
sudo pacman -Syu # update system packages
install="pacman -S"
fi
if [ $install = "" ]
then
echo "systems package manager not supported"
exit 1
fi
# Install packages
# programming languages
$install python && pip3 install -U pip
$install go
$install rustup && rustup-init && --rustc --version
# code editors
$install vim && cp "vim/.vimrc" ~/
# Containerization and Virtualization
$install docker minikube virtualbox
$install kubectl vagrant terraform packer
# Cloud infrastructure
$install aws-cli
fi