-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathinstall.sh
185 lines (153 loc) · 3.44 KB
/
install.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
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
#!/bin/bash
set -euo pipefail
# Display message 'Setting up my Mac...'
echo "Setting up my Mac..."
sudo -v
# Setup .ssh/config
mkdir -p $(dirname "$HOME/.ssh")
ln -sfn ssh-config "$HOME/.ssh/config"
# Install and use zsh from Homebrew
echo "Installing zsh from Homebrew..."
brew install zsh
chsh -s /usr/local/bin/zsh
# Oh My Zsh
echo "Installing Oh My Zsh"
sh -c "$(curl -fsSL https://raw.githubusercontent.com/robbyrussell/oh-my-zsh/master/tools/install.sh)"
# Z for Oh My Zsh
echo "Installing Z"
git clone [email protected]:agkozak/zsh-z.git $ZSH_CUSTOM/plugins/zsh-z
# Configure symlinks
ln -s ~/.dotfiles/.zshrc ~/.zshrc
# Source .zhrc file
echo "Sourcing ~/.zhrc"
source ~/.zhrc
# Install Homebrew
echo "Installing Homebrew"
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
# Install nvm
echo "Installing nvm"
curl -o- https://raw.githubusercontent.com/creationix/nvm/v0.39.1/install.sh | bash
# Install Node.js using nvm
nvm install 14.17.5
nvm install 16.14.2
nvm install 18.3.0
# Install Homebrew Packages
cd ~
echo "Installing Homebrew packages"
# Install Homebrew packages
echo "Installing Homebrew cask packages"
brew tap homebrew/cask-fonts
homebrew_packages=(
"1Password"
"adobe-creative-cloud"
"alfred"
"brave-browser"
"calibre"
"daisydisk"
"docker"
"dropbox"
"ffmpeg"
"fig"
"firefox"
"font-ibm-plex"
"font-jetbrains-mono"
"font-roboto-mono"
"font-roboto"
"fork"
"gh",
"git-standup"
"git"
"google-chrome"
"gradle"
"handbrake"
"hyper"
"imagemagick"
"insomnia"
"jq"
"kap"
"magnet"
"mkcert",
"mysql"
"ngrok"
"node"
"notion"
"now"
"nss"
"numi"
"openssl"
"php"
"pipenv"
"python3"
"rectangle"
"rocket"
"roon"
"sequel-pro"
"slack"
"spotify"
"starship"
"tidal"
"transmit"
"typora"
"viscosity"
"visual-studio-code"
"vlc",
"watch"
"yarn",
)
for homebrew_package in "${homebrew_packages[@]}"; do
brew install "$homebrew_package"
done
# Raycast
brew install --cask raycast
# VLC
brew install --cask vlc
# Google Drive
brew install --cask google-drive
# Zoom
brew install --cask zoom
# Messenger
brew install --cask messenger
# ChronoSync Express
brew install --cask chronosync
# NetNewsWire
brew install --cask netnewswire
# Edge
brew install --cask microsoft-edge
# Install Poetry
curl -sSL https://install.python-poetry.org | python3 -
# Cloudinary CLI
pip3 install cloudinary-cli
# Install Java
echo "Installing Java"
brew tap AdoptOpenJDK/openjdk
brew install openjdk@8
brew install openjdk@11
brew install openjdk@17
brew install openjdk@21
brew install openjdk@22
# Install Composer
echo "Installing Composer"
curl -sS https://getcomposer.org/installer | php
mv composer.phar /usr/local/bin/composer
# Installing global Node.js packages
echo "Installing Global Node.js packages"
npm i -g gatsby-cli
npm i -g netlify-cli
npm i -g vercel
npm i -g serve
npm i -g http-server
npm i -g svgo
npm i -g contentful
npm i -g fast-cli
# Generate SSH key
echo "Generating SSH keys"
ssh-keygen -t rsa
echo "Copied SSH key to clipboard - You can now add it to GitHub, Bitbucket etc"
pbcopy <~/.ssh/id_rsa.pub
# Register the global gitignore file
git config --global core.exludesfile ~/.dotfiles/.gitconfig_global
# Symlink VS Code settings and keybindings
ln -sf ~/.dotfiles/vscode/keybindings.json ~/Library/Application\ Support/Code/User/keybindings.json
ln -sf ~/.dotfiles/vscode/settings.json ~/Library/Application\ Support/Code/User/settings.json
# Complete
echo "Installation Complete"