-
Notifications
You must be signed in to change notification settings - Fork 0
/
Brewfile.tmpl
324 lines (300 loc) · 13.2 KB
/
Brewfile.tmpl
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
# vim: syntax=ruby filetype=ruby
#######################################
# Taps
#######################################
tap "8ta4/plist" # plist
tap "8ta4/extension" # extension
tap "ankitpokhrel/jira-cli" # jira-cli
tap "charmbracelet/tap" # mods
tap "coursier/formulas" # coursier
tap "felixkratz/formulae" # sketchybar
tap "jakehilborn/jakehilborn" # displayplacer
tap "noahgorstein/tap" # jqp
tap "oschrenk/made" # tools created by myself
tap "oschrenk/casks" # casks managed by myself
tap "txn2/tap" # kubefwd
# You can list all packages installed via `brew leaves`
#######################################
# Bootstrap priorities
#######################################
# having these installed early in the bootstrapping process allows
# to already configure and use services and applications while brew
# keeps installing other packages
cask "1password" # password manager
cask "1password-cli" # password manager
cask "alacritty" # terminal
cask "arc" # chromium based browser
cask "karabiner-elements" # customize keyboard
cask "hammerspoon" # desktop automation
cask "intellij-idea-ce" # jetbrains ide
brew "chezmoi" # dotfiles manager
brew "fish" # shell
brew "starship" # prompt
brew "fzf" # fuzzy finder
brew "neovim" # editor
cask "obsidian" # notes
cask "spotify" # audio client
#######################################
# Xcode
#######################################
# Installing XCode is VERY slow, but it
# is requited by a handful of packages
# Only on Personal machine
{{- if eq .chezmoi.hostname "Olivers-MaxBook" }}
brew "xcodes" # xcode & runtimes manager
# xcode takes a lot of time/space to install,
# do it later in the process
mas "XCode", id: 497799835
mas "Apple Developer", id: 640199958
{{- end }}
#######################################
# Packages
#######################################
brew "8ta4/plist/plist" # maocs, watch plist files
brew "8ta4/extension/extension" # web, install browser extensions
brew "age" # cryptography, encryption tool
brew "ankitpokhrel/jira-cli/jira-cli" # cli, interact with jira
brew "atuin" # cli, improved shell history
brew "blueutil" # system, get/set bluetooth from terminal
brew "chrome-cli" # cli, control chrome via cli
brew "cloc" # generic, count lines of code
brew "coreutils" # system, generic, GNU core utilities
brew "croc" # cryptography, secure data transfer
brew "direnv" # cli, auto load env
brew "displayplacer" # hardware, arrange monitors
brew "dockutil" # macos, manage the dock
brew "dos2unix" # data, convert text between DOS, UNIX, and Mac formats
brew "duti" # macos, set default filetypes
brew "fd" # system, generic, fast find alternative
brew "felixkratz/formulae/sketchybar" # macos, custom statusbar
brew "fileicon" # macos, manage icons
brew "findutils" # system, generic, GNU g-prefixed `find`, xargs`
brew "fnm" # javascript, version manger
brew "gawk" # system, generic, GNU awk utility
brew "gh" # cli, interact with github
brew "git" # git, dvcs
brew "gitmoji" # git, gitmoji
brew "git-crypt" # git, encrypt secrets in git
brew "git-delta" # git, better looking diffs
brew "git-extras" # git, nice git extras
brew "git-lfs" # git, large file storage
brew "git-open" # git, open git[hub/lab] urls
brew "glab" # git, gitlab cli
brew "glow" # cli, render markdown in terminal
brew "go" # go, language
brew "go-task" # generic, go-based task runner
brew "gradle" # kotlin, build tool
brew "helm" # k8s, package manager
brew "htop" # cli, Improved top
brew "hurl" # network, run/test http requests
brew "ical-buddy" # macos, calendar
brew "iconsur" # macos, fetch icons
brew "jd" # data, diff JSON
brew "jq" # data, process JSON
brew "k9s" # k8s, cluster manager
brew "kotlin" # kotlin
brew "krew" # k8s, kubectl package manager
brew "ktfmt" # kotlin, formatter
brew "ktlint" # kotlin, formatter
brew "kube-linter" # k8s, lint k8s yaml and helm
brew "kubectl" # k8s, cli
brew "kubectx" # k8s, switch k8s contexts
brew "kubescape" # k8s, scan cluster for security issues
brew "kustomize" # k8s, resource transformers
brew "lsd" # cli, "better" ls
brew "lua" # lua, programming language
brew "luarocks" # lua, package manager
brew "m1ddc" # hardware, monitor control
brew "miller" # data, process CSV
brew "minikube" # k8s, run local k8s
brew "minisign" # cryptography, sign files and verify signatures
brew "noahgorstein/tap/jqp" # data, tui playground for jq
brew "node" # javascript, language
brew "openjdk@11" # jvm, sdk
brew "openjdk@17" # jvm, sdk
brew "openjdk@21" # jvm, sdk
brew "oschrenk/made/cutter" # web, extract cookies
brew "oschrenk/made/keyboard" # hardware, control keyboard brightness of macbooks
brew "oschrenk/made/mission" # macos, task managment
brew "oschrenk/made/nightshift" # hardware, control Night Shift
brew "oschrenk/made/plan" # productivity, fetch next event
brew "oschrenk/made/sessionizer" # tmux, manage sessions
brew "page" # cli, Use Neovim as pager
brew "pgcli" # postgres, just cli
brew "poetry" # python, package manager
brew "prettier" # generic, code formatter
brew "pyenv" # python, version manager
brew "python" # python, language
brew "ripgrep" # system, generic, recursive search
brew "rust" # rust, language
brew "shellcheck" # shell, linter
brew "smartmontools" # hardware, harddrive, read ssd info
brew "spicetify-cli" # spotify ricing
brew "sqlfluff" # sql, formatter
brew "stylua" # lua formatter
brew "swift" # swift, language
brew "swiftformat" # swift, format
brew "telnet" # network, telnet protocol
brew "tmux" # cli, terminal multiplexer
brew "traefik" # k8s, reverse proxy
brew "tree" # cli, print file tree
brew "txn2/tap/kubefwd" # k8s, bulk port forwarding
brew "typescript" # typescript, language
brew "watch" # system, issue commands at regular interval
brew "xmlstarlet" # data, process XML
brew "yamlfmt" # yaml, formatter
brew "yarn" # javascript, package manager
brew "yq" # data, process YAML
{{- if eq .chezmoi.hostname "Olivers-MaxBook" }}
brew "asciinema" # a/v, record terminal sessions
brew "awscli" # devops, aws
brew "charmbracelet/tap/mods" # ai, chatgpt, cli
brew "coursier/formulas/coursier" # jvm, scala, artifact fetching
brew "doctl" # devops, Digital Ocean
brew "doggo" # network, dns client
brew "exiftool" # a/v, read/write exif
brew "ffmpeg" # a/v, convert audio/video
brew "flac" # a/v, flac codec
brew "httrack" # network, copy websites offline
brew "huggingface-cli" # ai, hugging face
brew "lame" # a/v, mp3 codec
brew "libmp3splt" # a/v, split mp3, off, flac files
brew "logcli" # O11y, query loki
brew "maven" # jvm, package manager
brew "mosh" # network, better shell for roaming
brew "mp3splt" # a/v, split mp3, off, flac files
brew "ngrep" # network packet analyzer
brew "nicerloop/nicerloop/mas" # macos, app store cli, requires Xcode
brew "nmap" # network,port scanning
brew "ollama" # ai, create, run llm
brew "pandoc" # docs, document converter
brew "podman" # generic, manage OCI contaniners and pods
brew "pulumi" # devops, infrastructure as code
brew "sbt" # jvm, scala
brew "scala" # jvm, scala
brew "swiftlint" # swift, lint, requires Xcode
brew "tectonic" # tex
brew "tfenv" # devops, terraform version manager
brew "typst" # typst, tex alternative (rust based)
brew "x264" # a/v, h264 encoder
brew "xvid" # a/v, mp4 lib
brew "yt-dlp" # a/v, download youtube video/audio
brew "zola" # docs, static site generator
{{- end }}
#######################################
# Apps
#######################################
# waiting for https://github.com/mas-cli/mas/issues/512
# see below for replacement until then
# brew "mas" # app store apps
# Only on Personal machine
{{- if eq .chezmoi.hostname "Olivers-MaxBook" }}
mas "Affinity Designer 2", id: 1616831348 # vector editing
mas "Affinity Photo 2", id: 1616822987 # raster editing
mas "Affinity Publisher 2", id: 1606941598 # book publishing
mas "Due", id: 524373870 # reminders on steroid
mas "Health Auto Export", id: 1115567069 # export apple health data
mas "HomeControl", id: 1547121417 # apple home
mas "Keynote", id: 409183694 # make slides
mas "NextDNS", id: 1464122853 # dns blocking
mas "NordVPN", id: 905953485 # NordVPN
mas "Numbers", id: 409203825 # excel
mas "Pages", id: 409201541 # docs
mas 'Parcel', id: 639968404 # Shipment tracking
mas "Reeder 5", id: 1529448980 # rss
mas "1Password for Safari", id: 1569813296 # 1Password extension
{{- end }}
#######################################
# Fonts
#######################################
cask "sf-symbols" # preview sf symbols
cask "font-fira-code"
cask "font-ia-writer-duo"
cask "font-ia-writer-quattro"
cask "font-iosevka"
cask "font-jetbrains-mono-nerd-font"
cask "font-m-plus-code-latin"
cask "font-mplus-nerd-font"
cask "font-open-sans"
cask "font-roboto-mono"
cask "font-roboto-mono-nerd-font"
cask "font-victor-mono"
# oschrenk/casks
cask "font-sf-mono-nerd-font"
#######################################
# Casks
#######################################
cask "chatgpt" # ChatGPT
cask "dbeaver-community" # sql client
cask "docker" # docker client
cask "firefox" # browser
cask "google-chrome" # browser
cask "google-cloud-sdk" # cloud, google cloud cli including gcloud
cask "jdk-mission-control" # monitor java applications
cask "keyboardcleantool" # disables keyboard for cleaning
cask "monodraw" # draw ascii diagrams
cask "neovide" # neovim desktop app
cask "sequel-ace" # MySQL client
# Only on Personal machine
{{- if eq .chezmoi.hostname "Olivers-MaxBook" }}
cask "blender" # 3d editor
cask "bruno" # test APIs
cask "calibre" # ebook manager
cask "cog" # audio client
cask "db-browser-for-sqlite" # sqlite client
cask "diffusionbee" # Stable Diffusion locally
cask "discord" # discord client
cask "elgato-control-center" # elgato software to control lights
cask "flux" # control screen color temperature
cask "handbrake" # video transcoder
cask "hex-fiend" # hex editor
cask "iina" # video client
cask "keycastr" # shows key strokes on screen
cask "knockknock" # identify background tasks/processes
cask "mindmac" # llm api client
cask "mochi" # study notes and flashcards
cask "numi" # calculator
cask "obs" # broadcasting
cask "ollamac" # gui for ollama
cask "omnidisksweeper" # cleanup disk space
cask "onyx" # macos maintenance
cask "podman-desktop" # generic, manage containers and pods
cask "raindropio" # bookmark managment
cask "rode-central" # rode companion app (for AI-1)
cask "signal" # signal messaging
cask "slack" # slack office communication
cask "telegram" # telegram messaging
cask "the-unarchiver" # unarchiving most archive files
cask "topnotch" # "hide" notch
cask "transmission" # torrent client
cask "upscayl" # upscala images with AI
cask "utm" # virtual machines for macos
cask "vlc" # video client
cask "whatsapp" # whatsapp messaging
cask "xld" # cd ripper
cask "zoom" # video conferencing
{{- end }}
#######################################
# Visual Studio
#######################################
cask "visual-studio-code" # editor
vscode "asvetliakov.vscode-neovim" # Neovim integration
vscode "bierner.markdown-checkbox" # Markdown checkboxes
vscode "fwcd.kotlin" # Kotlin
vscode "jdinhlife.gruvbox" # Theme, Gruvbox
vscode "ms-python.python" # Python
vscode "redhat.vscode-yaml" # Yaml, Syntax
vscode "mk12.better-git-line-blame" # git blame
# only on work machine
# work hostname is flakey
#
{{- if eq .chezmoi.hostname "Olivers-WaxBook" ||
if eq .chezmoi.hostname "Olivers-MacBook-Pro" }}
vscode "ms-vsliveshare.vsliveshare" # collaborate with others
vscode "GitLab.gitlab-workflow" # gitlab
{{- end }}
# only on personal machine
{{- if eq .chezmoi.hostname "Olivers-MaxBook" }}
vscode "scala-lang.scala" # Scala, Syntax
vscode "scalameta.metals" # Scala, Metals
{{- end }}