-
Notifications
You must be signed in to change notification settings - Fork 1
/
setup.sh
326 lines (246 loc) · 9.28 KB
/
setup.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
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
#!/bin/bash
# Setup Evan Hammer's environment. See README.rst.
# Related:
# .ssh
###############################################################################
# BASICS
###############################################################################
# go home
cd ~/
# xcode command line tools
xcode-select --install
# homebrew
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
brew doctor
# brew update
# brew upgrade FORMULA
# git
brew install git
brew install gh
# ack
brew install ack
# oh-my-zsh
sh -c "$(curl -fsSL https://raw.github.com/ohmyzsh/ohmyzsh/master/tools/install.sh)"
# check and do update
# softwareupdate --list
# softwareupdate -ia
# make sure the `~/Dropbox/preferences` folder is downloaded before setting up
# the other applications.
brew install --cask dropbox
open ~/Applications/Dropbox.app
brew install --cask iterm2 # link to preferences manually
# brew install --cask dash # link to preferences manually
###############################################################################
# ATMOSPHERE
###############################################################################
git clone https://github.com/evanhammer/atmosphere.git .atmosphere
# symlink configs
ln -s .atmosphere/.ackrc .ackrc
ln -s .atmosphere/.alias .alias
ln -s .atmosphere/.ctags .ctags
ln -s .atmosphere/.eslintrc.json .eslintrc.json
ln -s .atmosphere/.gitconfig .gitconfig
ln -s .atmosphere/.gitignore .gitignore
ln -s .atmosphere/.projects .projects
ln -s .atmosphere/.psqlrc .psqlrc
ln -s .atmosphere/.vimrc .vimrc
ln -s .atmosphere/.zshrc .zshrc
###############################################################################
# HARDWARE
###############################################################################
brew install --cask karabiner-elements # ms keyboard
# open karabiner elements
ln -s ~/.atmosphere/karabiner.json ~/.config/karabiner/karabiner.json
brew install --cask bettertouchtool # license in email, preferences in Dropbox
###############################################################################
# FONTS
###############################################################################
brew tap homebrew/cask-fonts
brew install --cask font-input
# open figma and set up fonts to sync
###############################################################################
# OS X Preferences
###############################################################################
# Apple Music
# Open with Opetions -- Choose Library... ~/Dropbox/media/iTunes
# Advanced > Set Media folder location to
# '~/Dropbox/media/music/music-library'
# Move iphone backup reference to dropbox:
# https://www.imore.com/how-move-your-iphone-or-ipad-backups-external-hard-drive
ln -s ~/Dropbox/media/iphone-backup ~/Library/Application\ Support/MobileSync/Backup
# Show the ~/Library folder
chflags nohidden ~/Library
# Store screenshots in subfolder on desktop
mkdir ~/Downloads/screenshots
defaults write com.apple.screencapture location ~/Downloads/screenshots
# turn off chime when plugging in laptop (while lid is open)
killall PowerChime
defaults write com.apple.PowerChime ChimeOnAllHardware -bool false
defaults write com.apple.PowerChime ChimeOnNoHardware -bool true
open -g -a PowerChime
###############################################################################
# APPLICATIONS
###############################################################################
# basic
brew install --cask 1password # not mas because qr scanner doesnt work
brew install --cask google-chrome
brew install --cask alfred
brew install --cask macdown # markdown
# prefer MAS over Caskroom for auto update
brew install mas
# sign into mac app store manually
mas install 1437226581 # horo (timer)
mas install 462058435 # microsoft excel
mas install 462054704 # microsoft word
mas install 803453959 # slack
mas install 506189836 # harvest
mas install 1492280469 # preview markdown
mas install 1320450034 # DaftCloud for SoundCloud
# daily
brew install --cask superhuman
brew install --cask zoomus
brew install --cask google-drive
brew install --cask airtable
brew install --cask obsidian
brew install --cask vimcal
brew install timeular
# Chrome: "Install page as app" for...
# Asana Business
# Asana Personal
# ChatGPT
# work
brew install --cask logitune
brew install notion
brew install --cask postman # HTTP Requests for API's
brew install --cask skyfonts
# personal
brew install --cask spotify
brew install --cask satellite-eyes # desktop background map
brew tap homebrew/cask-drivers && brew install sonos
brew install --cask daisydisk
brew install discord
# autoraise
# brew tap dimentium/autoraise
# brew install autoraise
# ln -s ~/.atmosphere/autoraise.config ~/.config/AutoRaise/config
# brew services start autoraise
# EBOOKS
brew install --cask calibre
brew install --cask adobe-digital-editions
rm -rf ~/Library/Preferences/calibre
ln -s ~/Dropbox/preferences/calibre ~/Library/Preferences/calibre
# point calibre's library to ~/Dropbox/books
# To Uninstall Applications, check these folders in both `/` and `~`:
# Applications
# Library
# Library/Application Support
# Library/LaunchAgents
# Library/Preferences
# Library/PreferencePanes
# Library/StartupItems
###############################################################################
# CODING ENVIRONMENT
###############################################################################
# nvm, node, & yarn
curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.7/install.sh | bash
nvm install --lts --default # nvm install --lts (for latest)
# openssl
brew install openssl
# wget
brew install wget
# setup vscode
brew cask install visual-studio-code
ln -s ~/Dropbox/preferences/vscode ~/.vscode
code # to create directory with settings.json
rm ~/Library/Application\ Support/Code/User/settings.json
ln -s ~/.atmosphere/.vscode/settings.json ~/Library/Application\ Support/Code/User/settings.json
ln -s ~/.atmosphere/.vscode/keybindings.json ~/Library/Application\ Support/Code/User/keybindings.json
# key repeat
defaults write com.microsoft.VSCode ApplePressAndHoldEnabled -bool false
# cursor key repeat
defaults write com.todesktop.230313mzl4w4u92 ApplePressAndHoldEnabled -bool false
# upgrade vim
brew install vim
# run Cmd+R at Boot; Terminal; csrutil disable
# sudo mv /usr/bin/vim /usr/bin/vimBak
# upgrade you complete me plugin
# git clone https://github.com/gmarik/Vundle.vim.git ~/.vim/bundle/Vundle.vim
# vim +PluginInstall +qall
# cd ~/.vim/bundle/YouCompleteMe && ./install.sh
# cd ~/.vim/bundle/tern_for_vim && npm install
# ctags (http://ctags.sourceforge.net)
# CONFIG .ctags
brew install ctags
# On package creation: ctags -f .tags -R .
brew install --cask docker
brew install supabase/tap/supabase
###############################################################################
# GIT
###############################################################################
# git legit
brew install legit
legit install
# git git-flow
brew install git-flow
# git completion
brew install git bash-completion
# already config'd: .git-flow-completion.sh
###############################################################################
# ssh
###############################################################################
# update ssh keys: github, heroku, digitalocean
###############################################################################
# DEPLOYING
###############################################################################
# heroku
# brew tap heroku/brew && brew install heroku
# requires xcode command line tools
# digital ocean
# brew install doctl
###############################################################################
# PYTHON
###############################################################################
# python
brew install python
brew install ruff # linter
# virtual environments
brew install pipenv
brew install direnv # automatic sourcing .env on cd
# pipenv install | pipenv --rm
###############################################################################
# RUBY
###############################################################################
gem install rubocop
###############################################################################
# JAVASCRIPT
###############################################################################
# javascript conventions
npm install -g eslint
# serve static files
npm install -g serve
# node extensions / modules
# sudo pip install nodeenv
# npm install -g nodemon
# jsctags
# npm install -g git+https://github.com/ramitos/jsctags.git
###############################################################################
# HTML/CSS/LESS
###############################################################################
# less
# npm install less -g
###############################################################################
# FIREBASE
###############################################################################
npm install -g firebase-tools
###############################################################################
# POSTGRES
###############################################################################
# PostGres
brew install postgresql
initdb /usr/local/var/postgres
brew services start postgresql
# brew services stop postgresql
# OPTIONAL INSTRUMENTATION: psql postgres -c 'create extension "adminpack";'
# ADD HSTORE EXTENSION: psql -d template1 -c 'create extension hstore;'
# client: postico
brew install postico