New macOS setup
Uncommented list of all the packages, configs and applications which I call essential for a new macOS setup.
This is an uncommented list of all the packages, configs and applications which I call essential.
In the near future this script should be completely automatic and dynamic, however, it isn't at the moment. (I'm simply not buying enough macs.)
Script
The mentioned packages are installed by the attached setup_mac.sh
bash script.
Homebrew packages
- git
- go
- youtube-dl
- zsh
- zsh-autosuggestions
- zsh-syntax-highlighting
- hugo
- python
- nmap
- make
- thefuck
- lsd
- speedtest-cli
- ytop (
brew tap cjbassi/ytop
)
Homebrew casks
Some of this software is paid software where an activation is necessary. See 1Password for registration keys.
- firefox
- google-chrome
- iterm2
- adapter
- iina
- vlc
- sublime-text
- texshop
- the-unarchiver
- veracrypt
- zoom
- little-snitch
- istat-menus
- daisydisk
- alfred
- 1password
- spotify
- pocket-casts
- owncloud
- toggl
- slack
- riot
- zulip
- zotero
- netron
- google-backup-and-sync
- jdownloader
- bettertouchtool
- skype
- appcleaner
- hiddenbar
- arduino
- imageoptim
- skim
- flux
- calibre
- karabiner-elements
- alfred
- battle-net
- borgbackup
- airtool
- handbrake
- little-snitch
- rectangle
Homebrew fonts
Tap the font repo before installing: brew tap homebrew/cask-fonts
.
- font-awesome-terminal-fonts
- font-source-code-pro
- font-fira-sans
- font-hack-nerd-font
Homebrew quick look plugins
Quicklook allows you to preview files by pressing space in the Finder. Those plugins allow the preview of different filetypes and enable syntax highlighting.
- qlstephen
- qlcolorcode
- qlmarkdown
- quicklook-json
- qlimagesize
- qlvideo
GitHub - sindresorhus/quick-look-plugins: List of useful Quick Look plugins for developers
Manual installation
The following steps are not automatized yet and need to be done manually.
ownCloud
- set ignored files
- set folders to sync
Terminal
Using iTerm2 as a terminal.
-
Set iTerm settings to
~/owncloud/dotfiles/iTerm
-
The color scheme should be inherited - it's using nord-iterm2
-
Spaceship prompt as oh-my-zsh plugin:GitHub - denysdovhan/spaceship-prompt: A Zsh prompt for Astronauts
-
iTerm profiles should be set to use
font-hack-nerd-font
-
zsh plugin up
git clone https://github.com/peterhurford/up.zsh ~/.oh-my-zsh/custom/plugins/up
macOS AppStore
The packages are maintained are installed by the macOS AppStore:
- Bear
- xCode
- MoneyMoney
- Microsoft Office, PowerPoint, Excel
- Notability
Zotero Plugins
- Better Bibtex
Manual download and installation
- Logitech G Hub
Configs
-
copy
~/.ssh/
and~/.gnupg/
keys by using Airdrop. -
export and share S/MIME certificates from keychain
-
autohide Dock instantly:
defaults write com.apple.dock autohide-time-modifier -int 0;killall Dock
- to restore:
defaults delete com.apple.dock autohide-time-modifier;killall Dock
- to restore:
-
hide macOS updates, like macOS Catalina
sudo softwareupdate --ignore "macOS Catalina"
- to restore:
sudo softwareupdate —-reset-ignored
-
...
Sublime Text Packages
- LatexTools
- MarkdownPreview
- Nord
Network configuration
-
Little Snitch needs to be manually installed (installer is available via brew casks)
-
setup VPNs
-
set network locations
- proxy, DNS, etc.
#!/bin/bash
# install homebew
echo "Installing Homebrew ..."
sh -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install.sh)"
echo "Done installing Homebrew.\n\n"
# command line tools
echo "Install xcode command line tools ..."
xcode-select --install
echo "Done installing xcode command line tools.\n\n"
# brew packages
echo "Install Homebrew packages ..."
brew update && brew upgrade
brew install \
git \
go \
youtube-dl \
zsh \
zsh-autosuggestions \
zsh-syntax-highlighting \
hugo \
python \
nmap \
make \
thefuck \
lsd \
speedtest-cli \
rmtrash \
platformio
brew tap cjbassi/ytop
brew install ytop
echo "Done installing homebrew packages.\n\n"
echo "Installing oh-my-zsh and spaceship-prompt ..."
# ohmyzsh
sh -c "$(curl -fsSL https://raw.githubusercontent.com/ohmyzsh/ohmyzsh/master/tools/install.sh)"
# spaceship prompt
git clone https://github.com/denysdovhan/spaceship-prompt.git "$ZSH_CUSTOM/themes/spaceship-prompt"
ln -s "$ZSH_CUSTOM/themes/spaceship-prompt/spaceship.zsh-theme" "$ZSH_CUSTOM/themes/spaceship.zsh-theme"
echo "Done installing oh-my-zsh and spaceship-promptn \n\n"
echo "Install homebrew casks ..."
# brew casks
brew install \
firefox \
google-chrome \
iterm2 \
adapter \
iina \
vlc \
sublime-text \
texshop \
the-unarchiver \
veracrypt \
zoomus \
little-snitch \
istat-menus \
daisydisk \
alfred \
1password \
spotify \
pocket-casts \
owncloud \
ferdi \
toggl \
slack \
zotero \
netron \
google-backup-and-sync \
jdownloader \
bettertouchtool \
skype \
appcleaner \
hiddenbar \
arduino \
imageoptim \
skim \
flux \
calibre \
karabiner-elements \
alfred \
battle-net \
borgbackup \
airtool \
handbrake \
sensiblesidebuttons
# quick Look plugins
brew install qlstephen \
qlcolorcode \
qlmarkdown \
quicklook-json \
qlimagesize \
qlvideo
echo "Done install homebrew casks.\n\n"
echo "Autohiding dock instantly ..."
# autohide Dock instantly
defaults write com.apple.dock autohide-time-modifier -int 0
killall Dock
echo "Installing fonts ..."
# Fonts
brew tap homebrew/cask-fonts
brew install \
font-awesome-terminal-fonts \
font-source-code-pro \
font-fira-sans \
font-hack-nerd-font
echo "Done installing fonts.\n\n"
echo "Setting symlinks for dotfiles ...\n make sure that owncloud is installed and synced."
git clone https://github.com/peterhurford/up.zsh ~/.oh-my-zsh/custom/plugins/up
# symlinks after installing owncloud
mkdir ~/.ssh
ln -s ~/ownCloud/dotfiles/vimrc ~/.vimrc
ln -s ~/ownCloud/dotfiles/zshrc ~/.zshrc
ln -s ~/ownCloud/dotfiles/ssh-config ~/.ssh/config
ln -s ~/ownCloud/dotfiles/gitconfig ~/.gitconfig
ln -s ~/ownCloud/dotfiles/gitignore_global ~/.gitignore_global
echo "Fin.\n\n"