๐ Setting Up Your Fresh MacOS Installation: A Comprehensive Guide โ
Streamline your MacOS setup with Homebrew, over 100 essential apps, and customization tips

dotfiles
repo and the dotfiles blog post for more details.Introduction #
Setting up a new MacOS installation can be a tedious process. This blog post will guide you through the essential steps and applications to install when setting up your fresh MacOS environment. Iโll cover a few unavoidable manual installations, homebrew, iTerm and VS Code font, oh-my-zsh, but can automate most other things.
Note that this is just what I have been doing for the last years, and you might want to do things differently.
basnijholt/install-fresh-macOS.md
Table of Contents
1. Manual Installations #
First, letโs manually install some essential tools and software:
- homebrew, the essential package manager for MacOS
- micromamba, my preferred conda package manager which is blazingly fast
- Chrome (manual install because the brew version doesnโt work with 1Password)
- File-up, a simple tool I made to upload files to an FTP server and copy the URL to the clipboard (optional)
Set a host
file to block unwanted websites and advertisements.
2. Homebrew #
Homebrew is a powerful package manager for MacOS. It allows you to quickly and easily install, update, and remove software.
To install a long list of essential applications and tools, run the following commands in your terminal (click to unfold):
brew install --cask \
adobe-creative-cloud \
adobe-digital-editions \
airflow \
avast-security \
balenaetcher \
bartender \
bettertouchtool \
brave-browser \
cakebrew \
calibre \
chromedriver \
cryptomator \
db-browser-for-sqlite \
disk-inventory-x \
docker \
dropbox \
eqmac \
exodus \
filebot \
firefox \
flux \
github \
google-chrome \
handbrake \
hiddenbar \
homebrew/cask-fonts/font-fira-code \
inkscape \
istat-menus \
iterm2 \
jabref \
karabiner-elements \
keepingyouawake \
licecap \
lulu \
lyx \
macfuse \
mactex \
mactracker \
mendeley \
microsoft-azure-storage-explorer \
microsoft-office \
microsoft-teams \
monitorcontrol \
mounty \
mpv \
musicbrainz-picard \
nordvpn \
obs \
obsidian \
onyx \
protonmail-bridge \
qbittorrent \
qlvideo \
raycast \
rectangle \
rotki \
sabnzbd \
selfcontrol \
signal \
skype \
sloth \
spotify \
steam \
switchresx \
syncthing \
teamviewer \
telegram \
tor-browser \
tunnelblick \
unclack \
universal-media-server \
visual-studio-code \
vlc \
webtorrent \
xquartz \
zoom
brew install \
autossh \
azure-cli \
bat \
brew-cask-completion \
cointop \
gh \
gifsicle \
git \
git-extras \
git-lfs \
git-secret \
gnupg \
go \
graphviz \
gromgit/fuse/ext4fuse-mac \
gromgit/fuse/ntfs-3g-mac \
gromgit/fuse/sshfs-mac \
homebrew/tex/git-latexdiff \
htop \
hugo \
imagemagick \
jq \
keychain \
micro \
microsoft/git/git-credential-manager-core \
nano \
openjdk \
pipx \
rbenv \
rclone \
rsync \
ruby \
rustup-init \
ssh-copy-id \
starship \
terraform \
tmux \
wget \
yq \
zsh
Otherwise, you can install the essential applications and tools one by one.
json
file and markdown-code-runner
1. ๐ Browsers #
Brave Browser ๐ก๏ธ๐ฆ
A privacy-focused browser with built-in adblocker and support for Chrome extensions, rewarding content creators via BAT tokens.
Chrome ๐๐จ
A fast and user-friendly browser with seamless Google service integration and extensive extension library.
Firefox ๐๐ฆ
An open-source browser prioritizing user privacy and security, offering a customizable experience with various add-ons.
2. ๐ ๏ธ Productivity Tools #
Bartender ๐ธ๐ฅ๏ธ
A utility to organize and manage your Macโs menu bar icons, improving aesthetics and accessibility.
- Install with
brew install --cask bartender
- See the formula
BetterTouchTool ๐๐ ๏ธ
A customizable input device manager that enables advanced gesture control and shortcuts for your Mac.
Graphviz ๐๐๏ธ
An open-source graph visualization software, capable of representing structural information as diagrams of abstract graphs and networks.
HiddenBar ๐๐ฅ๏ธ
A lightweight tool to hide menu bar icons and declutter your Macโs interface.
JQ ๐๐
A lightweight and flexible command-line JSON processor, enabling data extraction, transformation, and manipulation of JSON data.
Karabiner-Elements โจ๏ธ๐ง
A powerful keyboard customizer allowing you to remap keys, create shortcuts, and improve typing efficiency on your Mac.
KeepingYouAwake โ๐ป
A utility to prevent your Mac from going to sleep or turning off the display when you need it to stay active.
Obsidian ๐๐
A powerful note-taking and knowledge management application that uses plain text files with Markdown support.
Raycast โก๐ฑ๏ธ
A productivity tool that allows you to control your Mac using powerful and customizable command-based actions.
Rectangle ๐ผ๏ธโจ๏ธ
A window management tool to easily resize and position windows on your Mac using keyboard shortcuts or snap-to-edge functionality.
iStat Menus ๐๐ก๏ธ
A comprehensive system monitor providing detailed information about your Macโs performance through customizable menu bar icons.
- Install with
brew install --cask istat-menus
- See the formula
3. ๐ฃ Communication #
Microsoft Teams ๐๐
A collaboration and communication platform for businesses, integrating chat, meetings, file sharing, and more.
Signal ๐๐ฌ
A secure and private messaging app with end-to-end encryption, supporting voice and video calls.
Skype ๐ฑ๐
A widely used communication tool for voice and video calls, instant messaging, and file sharing.
Telegram ๐๐
A cloud-based messaging platform with a focus on speed and security, supporting large groups and file sharing.
Zoom ๐น๐
A popular video conferencing tool for virtual meetings, webinars, and collaboration.
4. ๐ป Development #
Airflow ๐ฌ๏ธ๐
The ultimate way to watch your videos on Chromecast, Apple TV and AirPlay 2 enabled TVs.
- Install with
brew install --cask airflow
- See the formula
Autossh ๐๐
A tool for automatically starting and maintaining SSH connections.
Azure CLI โ๏ธ๐ง
A command-line tool for managing Azure resources.
Bat ๐ฆ๐
A cat
command clone with syntax highlighting and Git integration.
Chromedriver ๐๐ฆ
A WebDriver for running web tests with Chrome.
Docker ๐ณ๐ฆ
A platform for developing, shipping, and running containerized applications.
Git Credential Manager Core ๐งโ๐ป๐
A cross-platform credential helper for Git for HTTPS authentication.
- Install with
brew install microsoft/git/git-credential-manager-core
- See the repo
Git Extras โ๐ง
Extra utilities and scripts for Git.
Git LFS ๐๏ธ๐
A Git extension for versioning large files.
Git Secret ๐คซ๐
A tool for storing sensitive data in Git repositories.
Git ๐งโ๐ป๐
A widely used distributed version control system.
Go ๐โโ๏ธ๐ค
An open-source programming language designed for simplicity and concurrency.
Hugo ๐๐ ๏ธ
A fast and flexible static site generator.
Java โ๐ป
A popular programming language and development platform.
Micro โ๏ธ๐ฅ๏ธ
A modern and intuitive terminal-based text editor.
Nano ๐๐
A simple and easy-to-use terminal text editor.
Rbenv ๐๐ง
A Ruby version management tool.
Ruby ๐๐ป
A dynamic, open-source programming language focused on simplicity and productivity.
Rustup-Init ๐ฆ๐ ๏ธ
A toolchain installer for the Rust programming language.
Terraform ๐๐ ๏ธ
An infrastructure as code software tool for managing cloud resources.
Visual Studio Code ๐ปโ๏ธ
A powerful and extensible code editor with integrated Git and debugging support.
5. ๐จ Graphics and Design #
Gifsicle ๐๏ธ๐ ๏ธ
A command-line tool for creating, editing, and optimizing GIF animations and images.
ImageMagick ๐ผ๏ธ๐ ๏ธ
A powerful command-line tool for creating, editing, and converting bitmap images, supporting a wide range of image formats.
Inkscape โ๏ธ๐ผ๏ธ
A professional vector graphics editor that supports various file formats, offering a powerful set of drawing tools for graphic design.
OBS (Open Broadcaster Software) ๐ฎ๐ฅ
A powerful and customizable software for live streaming and screen recording, widely used by content creators and gamers.
6. ๐ฅ๏ธ Terminal and Shell #
Brew-Cask-Completion ๐บ๐
Shell completion for the Homebrew-Cask command, providing helpful suggestions and autocompletion.
- Install with
brew install brew-cask-completion
- See the formula
GitHub CLI (gh) ๐๐ป
A command-line tool for managing GitHub repositories, issues, pull requests, and more, directly from the terminal.
Htop ๐๐ฅ๏ธ
An interactive process viewer for Unix systems, providing a real-time, color-coded view of system resources and processes.
Starship ๐โญ
A minimal, fast, and customizable shell prompt for any shell.
Tmux ๐บ๐
A terminal multiplexer for managing multiple terminal sessions within a single window.
XQuartz ๐จ๐ฅ๏ธ
An open-source X Window System implementation for macOS that allows running X11 applications, enabling compatibility with many Unix programs.
Zsh ๐๐
An interactive and highly extensible Unix shell.
iTerm2 ๐ฅ๏ธ๐๏ธ
A highly customizable and powerful terminal emulator for macOS.
7. ๐ ฐ๏ธ Fonts #
Font Fira Code ๐๐
A monospaced font with programming ligatures, designed for a modern coding experience. Enhances readability and aesthetics in code editors.
8. ๐ File Management and Utilities #
BalenaEtcher ๐พ๐
A user-friendly tool for flashing OS images onto SD cards and USB drives, simplifying the creation of bootable media.
Cakebrew ๐ฐ๐บ
A GUI for managing Homebrew packages, providing an easy way to search, install, and update software.
Cryptomator ๐โ๏ธ
An open-source encryption solution for cloud storage services, offering transparent, client-side encryption for data security.
DB Browser for SQLite ๐๏ธ๐
A high-quality, visual tool to create, design, and edit SQLite database files, streamlining database management.
Disk Inventory X ๐ฝ๐
A disk usage utility for macOS that displays folder and file sizes in a visual treemap, enabling quick identification of large files.
Dropbox โ๏ธ๐
A popular cloud storage service that seamlessly synchronizes files across devices, making file sharing and collaboration easy.
MPV ๐๏ธ๐ง
A free, open-source, and cross-platform media player with minimalistic design, supporting a wide range of media formats.
Mounty ๐ป๐ฝ
A user-friendly tool for mounting and writing to NTFS drives on macOS, providing seamless read/write access.
Rclone ๐โ๏ธ
A command-line program to manage files on various cloud storage services, supporting synchronization, copying, and more.
Rsync ๐๐
A powerful file transfer utility that uses delta encoding and compression to minimize data transfer, optimizing file synchronization.
SSH-Copy-ID ๐๐
A utility to install your public key on a remote machineโs authorized_keys, simplifying the setup of passwordless SSH connections.
Syncthing โ๏ธโ๏ธ
A decentralized, open-source file synchronization tool that securely shares and synchronizes files between devices without relying on cloud services.
Universal Media Server ๐บ๐
A versatile media server that supports various devices and streaming protocols, allowing you to stream your media files across your home network.
Wget ๐โฌ๏ธ
A command-line utility for downloading files from the internet, supporting HTTP, HTTPS, and FTP protocols.
9. ๐ Security and Privacy #
Avast Security ๐ก๏ธ๐
A comprehensive antivirus and security suite, offering protection against various threats, as well as VPN and cleanup features.
- Install with
brew install --cask avast-security
- See the formula
GnuPG (GPG) ๐๐
A complete and free implementation of the OpenPGP standard, providing encryption, signing, and key management capabilities.
Keychain ๐๐
A tool for managing ssh-agent and GnuPG agent, designed to make key management easier and more convenient.
LuLu ๐ฆ๐ฅ
A lightweight, open-source firewall for macOS, offering control over outgoing connections and protecting against unauthorized access.
NordVPN ๐๐
A popular VPN service providing a secure and encrypted connection, allowing access to geo-restricted content and protecting your privacy.
ProtonMail Bridge ๐ง๐
A desktop application enabling the use of ProtonMail with your preferred email client, ensuring end-to-end encryption and privacy.
Tor Browser ๐ต๏ธโโ๏ธ๐
A privacy-focused browser that routes your traffic through the Tor network, ensuring anonymity and access to hidden services on the dark web.
Tunnelblick ๐๐
A free, open-source VPN client for macOS, providing an easy-to-use interface for connecting to OpenVPN servers.
10. ๐ฅ Multimedia #
HandBrake ๐๏ธ๐ง
A versatile video converter and transcoder, supporting a wide range of formats and offering advanced customization options.
LICEcap ๐ฅ๏ธ๐ฅ
A lightweight screen capture tool, allowing you to create animated GIFs directly from your desktop.
MusicBrainz Picard ๐ต๐
An open-source music tagger, using the MusicBrainz database to automatically update and organize your audio filesโ metadata.
Spotify ๐ง๐ถ
A popular music streaming service, offering access to millions of songs, podcasts, and personalized playlists with a free or premium account.
Steam ๐ฎ๐
A digital distribution platform for purchasing and managing video games, providing a vast library of titles and social features.
VLC ๐บ๐
A versatile and open-source media player, supporting a wide range of audio and video formats, as well as streaming and conversion capabilities.
WebTorrent ๐โก
A user-friendly torrent client that runs directly in your browser, enabling streaming of torrent files without the need for a separate application.
eqMac ๐๏ธ๐ถ
An open-source audio equalizer for macOS, enhancing your listening experience with customizable presets and manual adjustments.
11. ๐ Office and Document Management #
Adobe Creative Cloud ๐จ๐ฅ๏ธ
A suite of creative applications for graphic design, video editing, web development, and more, including Photoshop, Illustrator, and Premiere Pro.
Adobe Digital Editions ๐๐
An ebook reader and manager, supporting various formats and DRM-protected files, as well as syncing across devices.
Calibre ๐๐ง
An open-source ebook management tool, offering format conversion, syncing, and organization features, as well as a built-in reader.
FileBot ๐๐
A media file organization tool, simplifying the renaming and sorting of TV shows, movies, and music files.
JabRef ๐๐
An open-source reference manager, enabling the organization and citation of scientific publications in BibTeX and other formats.
LyX ๐๐
A document processor that combines the power of LaTeX with a user-friendly graphical interface, simplifying the creation of professional-looking documents.
MacTeX ๐๐ฃ
A comprehensive TeX distribution for macOS, including LaTeX, various utilities, and documentation.
Mactracker ๐๐พ
A comprehensive database of Apple hardware and software, providing detailed specifications, history, and support information.
Mendeley ๐๐
A reference manager and academic social network, simplifying the organization, annotation, and citation of research papers.
Microsoft Office ๐๐ผ
A suite of productivity applications, including Word, Excel, PowerPoint, and Outlook, designed for creating, editing, and managing documents.
OnyX โ๏ธ๐ฅ๏ธ
A multifunctional utility for macOS, offering maintenance, optimization, and personalization features, as well as advanced options for power users.
12. ๐ Finance and Cryptocurrency #
Cointop ๐น๐
A command-line interface for tracking cryptocurrency market data, with an interactive and customizable dashboard.
Exodus ๐ฐ๐
A user-friendly cryptocurrency wallet, supporting a wide range of assets, exchange features, and portfolio management.
13. ๐ฒ Miscellaneous #
Ext4Fuse ๐ง๐ฝ
A macOS filesystem extension enabling read-only support for the ext4 file system, commonly used on Linux systems.
Git LaTeXdiff ๐๐
A command-line tool for generating diff files for LaTeX documents, simplifying the tracking of changes and collaboration on LaTeX projects.
GitHub ๐งโ๐ป๐
The official GitHub desktop client, simplifying repository management, version control, and collaboration on macOS.
MacFuse ๐ฝ๐
A macOS filesystem extension enabling the use of non-native filesystems, offering compatibility with a wide range of formats.
Microsoft Azure Storage Explorer โ๏ธ๐๏ธ
A graphical tool for managing Azure Blob Storage, offering convenient access, organization, and management of your cloud storage.
MonitorControl ๐ฅ๏ธ๐๏ธ
A utility for controlling your external monitorโs settings, such as brightness and volume, directly from your macOS menu bar.
NTFS-3G ๐ฅ๏ธ๐
A macOS filesystem extension providing read-write support for the NTFS file system, commonly used on Windows systems.
QLVideo ๐ฅ๐
A QuickLook plugin for macOS, providing thumbnail previews and playback of various video formats directly in Finder.
Rotki ๐น๐
An open-source portfolio tracking and tax reporting tool for cryptocurrencies, offering extensive customization and privacy options.
SABnzbd ๐๐๏ธ
A binary newsreader for Usenet, offering automation features, a web interface, and compatibility with popular download management tools.
SSHFS ๐ป๐
A macOS filesystem extension enabling mounting of remote filesystems via SSH, providing secure and convenient access to remote files.
SelfControl ๐ซ๐
A productivity tool for macOS, allowing you to block access to distracting websites and applications for a set period of time.
Sloth ๐๐ป
A macOS utility for displaying open files and network connections, offering insights into system resource usage and potential bottlenecks.
SwitchResX ๐ฅ๏ธ๐
A display resolution management tool for macOS, enabling custom resolutions, aspect ratios, and refresh rates for your monitor.
TeamViewer ๐๐ป
A remote desktop and collaboration tool, offering screen sharing, file transfer, and remote control capabilities for personal and professional use.
Unclack ๐ค๐
A utility for macOS that automatically mutes your microphone while you type, preventing unwanted noise during conference calls and voice recordings.
f.lux ๐๐
A screen color temperature adjustment tool, reducing eye strain and promoting healthy sleep patterns by adapting your display to the time of day.
pipx ๐๐ฆ
A package manager for installing and running Python applications in isolated environments, ensuring clean and conflict-free installations.
qBittorrent โก๐
A free and open-source torrent client, featuring a clean interface, powerful search capabilities, and minimal resource usage.
yq ๐๐ง
A command-line tool for parsing and manipulating YAML files, offering powerful filtering and editing capabilities.
3. Increase sudo
Password Timeout #
To increase the sudo password timeout, follow the instructions provided in this StackExchange answer.
4. oh-my-zsh #
oh-my-zsh is a popular framework for managing your Zsh configuration. Follow the download instructions provided in the link, or use the dotfiles
folder if you have it.
5. Set Your Mac Host/Computer Name #
To set a custom host or computer name for your Mac, open a terminal and run the following commands:
NAME="your-custom-name"
sudo scutil --set HostName $NAME
sudo scutil --set LocalHostName $NAME
sudo scutil --set ComputerName $NAME
dscacheutil -flushcache
6. Quick Dock Hiding #
For a cleaner desktop experience, follow this StackExchange answer to enable quick dock hiding.
7. iTerm and VS Code Font #
The Fira Code font is a popular choice for developers. To set it as the default font for iTerm and Visual Studio Code:
- iTerm should be set by
Profiles.json
- Follow the VS Code instructions
Conclusion #
After completing these steps, restart your Mac. You now have a fully customized and functional MacOS environment, ready for productivity and creativity. Enjoy your freshly set-up MacOS!