Automated macOS setup script for a fresh Mac installation. Installs apps, CLI tools, configures system preferences, and sets up the development environment.
# Clone the repo
git clone https://github.com/ahmadawais/dotfiles.git
cd dotfiles
# Make executable and run
chmod +x mac-setup.sh
./mac-setup.sh| Tool | Description |
|---|---|
wget |
Network downloader |
bat |
Better cat with syntax highlighting |
mackup |
Backup app settings to cloud |
pv |
Pipe progress viewer |
jq |
JSON processor |
ffmpeg |
Media converter |
yt-dlp |
YouTube downloader |
composer |
PHP package manager |
gh |
GitHub CLI |
eza |
Modern ls replacement |
- Ghostty - GPU-accelerated terminal
- iTerm2 - Feature-rich terminal
- Google Chrome
- Visual Studio Code + Insiders
- Postman
- Local (WordPress)
- GPG Suite
- Raycast (launcher)
- Rectangle (window management)
- Maccy (clipboard manager)
- Dropbox
- Zoom
- Microsoft Teams
- Discord
- VLC
- IINA
- ImageOptim
- WebTorrent
- Mounty (NTFS support)
- Cursorcerer (auto-hide cursor)
- Macs Fan Control
- Cloudflare WARP
- Karabiner Elements
- OBS Studio
- Tunnelblick (VPN)
- ScreenFlow
- Rocket
- ColorSnapper
- ForkLift
- Setapp
- n - Node version manager
- Node.js LTS
- npm
- pnpm
- git-open (global package)
- Oh My Zsh
- zsh-autosuggestions plugin
- zsh-syntax-highlighting plugin
- Shades of Purple theme
The script configures these system preferences:
- Allow quitting via Cmd+Q
- Show hidden files
- Show all file extensions
- Show path bar and status bar
- List view by default
- Folders on top when sorting
- Expanded save/print dialogs
- Fast key repeat rate
- Disabled auto-correct
- Tap to click enabled
- Auto-hide Dock (no delay)
- Saved to
~/Desktop/Screenshots - Shadows disabled
- Safari: Full URL + Developer menu
- TextEdit: Plain text mode
- Activity Monitor: Show all processes
- VLC: History cleared
After the script completes:
- Restart your Mac to apply all system changes
- Configure zsh - Add plugins to
~/.zshrc:plugins=(git zsh-autosuggestions zsh-syntax-highlighting) ZSH_THEME="shades-of-purple" - Check manual.md for:
- License activation instructions
- Manual app installations
- Theme setup guides
dotfiles/
├── mac-setup.sh # Main setup script
├── manual.md # Post-install manual steps
├── readme.md # This file
└── .zshrc # Zsh configuration
Add brew formulas or casks in the appropriate section:
# CLI tool
brew install tool-name
# GUI app
brew install --cask app-namemacOS defaults are in the "macOS PREFERENCES" section. Reference:
- macOS (tested on Ventura, Sonoma, Sequoia)
- Admin privileges (for sudo)
- Internet connection
- Intel Macs: Full support
- Apple Silicon (M1/M2/M3): Full support with automatic Homebrew path configuration
Inspired by:
Ahmad Awais - @AhmadAwais
MIT