My macOS setup
Since I started my latest job, I began documenting (mostly) everything I installed on my work volume (I dual boot between a personal and a work volume). As I like skimming through other peoples’ similar lists I thought I would publish mine. I’ll attempt to keep this updated as I go.
Installation
Apps
- Install chrome from google.com
- Install brew:
- From brew.sh
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"- This also installs Xcode command line tools
- Install kitty
curl -L https://sw.kovidgoyal.net/kitty/installer.sh | sh /dev/stdin - Install slack from https://slack.com/intl/en-au/downloads/instructions/mac
- Lastpass extension from chrome from https://chrome.google.com/webstore/detail/lastpass-free-password-ma/hdokiejnpimakedhajhdlcegeplioahd
- Thunderbird from https://www.thunderbird.net/en-GB/
- Docker from https://docs.docker.com/desktop/mac/install/
- Tunnelblick from https://www.tunnelblick.net
- Got the ovpn file from old volume, copied it into work files
- Karabiner elements from https://karabiner-elements.pqrs.org/
- Then need to give it input access from system preferences (it will ask), might require reboot since reasons
- Hammerspoon from https://github.com/Hammerspoon/hammerspoon/releases/latest
- Needs access in system preferences too
- Obsidian from https://obsidian.md/
- Via (for keyboard) from https://www.github.com/the-via/releases/releases/latest
- Alfred from https://www.alfredapp.com/
- Needed preferences to migrate (from
.config/alfred) - Enter licence key from file
- Needed preferences to migrate (from
- Tableplus from https://www.alfredapp.com/, enter licence key
- Little snitch from https://www.obdev.at/products/littlesnitch/index.html, enter licence
Iterm2 fromdon’t use it all anymorehttps://iterm2.com/downloads/stable/latest- Bartender from https://www.macbartender.com/
- Omnifocus from https://www.omnigroup.com/omnifocus/
- Had to put in account password to auth / register again
- Cleanshot X from https://licenses.maketheweb.io/download/cleanshotx
- Needed licence, had to download old version
- Need to turn off shortcuts for screen capture
- Needs access in system preferences
- Firefox from https://www.mozilla.org/en-US/firefox/download/thanks/
- VLC from https://www.videolan.org/vlc/
- Kindle from mac app store
- VSCode from https://code.visualstudio.com/Download
- Postman from https://www.postman.com/downloads/
- Virtual Box from https://www.virtualbox.org/wiki/Downloads (not sure if needed any more?)
- System Color [sic] Picker from https://apps.apple.com/us/app/system-color-picker/id1545870783?mt=12
- Choosy from https://choosy.app/
- Coherence https://www.bzgapps.com/coherence, enter in licence
- Transmit from panic.com
Brew
- Lua-languge-server
- antibody (zsh plugin management)
- antidote
- bash
- bat
- btop (pretty top)
- composer
- ctags (brew install –HEAD universal-ctags/universal-ctags/universal-ctags)
- exa
- exiftool
- fd
- ffmpeg
- figlet (large ascii text!)
- fzf and then
$(brew --prefix)/opt/fzf/install - gawk (for fingers tmux plugin)
- git
- git-delta
- gsed (normal sed instead of weird mac sed)
- htop
- httpie
- hugo (blog software)
- imagemagick
- jq
- lazydocker
- lazygit
- lolcat (colour the cli)
- luarocks
- ncdu (space calculator)
- neofetch
- neovim
- numi-cli (for converting units on the command line)
- nvm (after .zshrc file placed)
- pandoc
- php@8.0 (work specific)
- pkg-config
- prettyping (better ping)
- procs
- qview (simple image viewer)
- ranger
- reattach-to-user-namespace (fixes tmux)
- rg
- sd
- sketchybar
- snyk (for work, security scanning)
- terminal-notifier
- thyme (pomodor timer)
- tldr
- tmux
- transcrypt (git secrets)
- vale (grammar and spelling)
- volta (node management)
- yabai (window management)
- yadm (dot files manager)
- youtube-dl
fasdzoxide (smarter directory opening)
Install oh-my-zsh:
sh -c "$(curl -fsSL https://raw.githubusercontent.com/ohmyzsh/ohmyzsh/master/tools/install.sh)”
For plugins install antidote via brew.
Fonts
FiraCode font from https://github.com/tonsky/FiraCode
PHP and extensions
pecl install redis
pecl install imagick (needs brew install png-config) and (brew install imagemagick)
Settings
System preferences
- Set display to correct resolution
- Turn off HDR, scaling on and correct text size, small
- Install SwitchResX if it’s a high resolution ultra wide which macOS doesn’t support
- Mouse direction set to not natural (old habits never die)
- Turn off indexing in spotlight of old volume in spotlight privacy preferences, add in the folder / volume – taken care of by the
.macosfile - Run all the things in
.macos(TBD link to this)
Rando other system settings:
- full disk access
- zsh
- sh
- nfsd
- alfred
- bartender
- developer tools
- terminal
- kitty
- apple advertising
- turn off
- analytics
- all off
Misc
- Copy ssh files from other volume,
id_dsaandid_dsa.pub - Give kitty full disk access and add it to developer tools in security and privacy – might need to install Xcode for that to show up?
- Pull in dotfiles using yadm
- Fixing mysql db lower case names issue
- Just remove the data directory, restart
Neovim
I have now shifted to using lazy.nvim and mason which simplifies pretty much everything including language server installation. My dotfiles include pulling in lazy.nvim if it doesn’t yet exist.
Tools that sit outside of the above:
- Lua language:
brew install lua-language-server - Python provider:
python3 -m pip install pynvim - Ruby provider:
Sudo gem install neovim - Node provider:
npm install -g neovimAlso jdtls but didn’t write that one down.
tmux
Plugin installation git clone https://github.com/tmux-plugins/tpm ~/.tmux/plugins/tpm.
Need to have installed reattach-to-user-namespace.
To install plugins, prefix+I (capital I).
Other
Misc
Hosts updates
Work related
Brew:
- aptible
- awscli
- snyk