# sb2nov/mac-setup

**Attribution required: if you use, quote, or summarise this content, you must credit and link back to [awesome-repositories.com](https://awesome-repositories.com/repository/sb2nov-mac-setup).**

7,358 stars · 1,003 forks · TypeScript · NOASSERTION

## Links

- GitHub: https://github.com/sb2nov/mac-setup
- Homepage: https://sourabhbajaj.com/mac-setup/
- awesome-repositories: https://awesome-repositories.com/repository/sb2nov-mac-setup.md

## Topics

`fresh-installs` `gitbook` `guide` `guidebook` `hacktoberfest` `install` `installation` `mac` `mac-osx` `macos` `setup`

## Description

This project is a step-by-step guide for setting up a complete programming environment on a new Mac. It walks through configuring Git with identity and credential caching, installing and managing software through the Homebrew package manager, and customizing the terminal with Oh My Zsh, fuzzy finders, and keyboard shortcuts. The guide also covers setting up JetBrains IDEs with shared key mappings and plugins, and installing development language runtimes for Node, Python, C++, Ruby, Go, and Java.

The guide differentiates itself by providing a structured onboarding checklist that covers the full developer setup process, from system preferences to IDE configuration. It includes specific instructions for generating project-specific and global gitignore files, configuring Touch ID for sudo authentication, and installing Quick Look plugins for file previews. The documentation also addresses installing Docker on macOS, setting up a LaTeX distribution, and managing multiple Java SDKs through a command-line interface.

The broader capability surface includes installing daily-use applications, configuring shell paths for installed programs, and setting up command-line tools like a fuzzy finder and Emacs text editor. The guide also covers searching files by pattern, limiting directory tree depth, and navigating text with keyboard shortcuts for efficient terminal use.

## Tags

### Development Tools & Productivity

- [macOS Development Environments](https://awesome-repositories.com/f/development-tools-productivity/macos-development-environments.md) — Provides a complete step-by-step guide for setting up a programming environment on a new Mac.
- [Command Line Package Managers](https://awesome-repositories.com/f/development-tools-productivity/command-line-package-managers.md) — Installs and manages command-line software packages on macOS using a package manager. ([source](https://sourabhbajaj.com/mac-setup/homebrew))
- [Development Environment Setups](https://awesome-repositories.com/f/development-tools-productivity/development-environment-setups.md) — Walks through installing languages, tools, and applications needed for programming on a new Mac. ([source](https://cdn.jsdelivr.net/gh/sb2nov/mac-setup@main/README.md))
- [Homebrew Packages](https://awesome-repositories.com/f/development-tools-productivity/homebrew-packages.md) — Installs command-line tools and applications on macOS using the Homebrew package manager. ([source](https://sourabhbajaj.com/mac-setup/homebrew/usage))
- [Development Toolchain](https://awesome-repositories.com/f/development-tools-productivity/installation-scripts/development-toolchain.md) — Installs and configures programming language runtimes and compilers for Node, Python, C++, Ruby, Go, and Java.
- [Version Control Configurations](https://awesome-repositories.com/f/development-tools-productivity/version-control-configurations.md) — Configures Git with identity, credential caching, and global gitignore rules for version control workflows.
- [JetBrains IDE Configurations](https://awesome-repositories.com/f/development-tools-productivity/jetbrains-ide-configurations.md) — Configures JetBrains IDEs with shared key mappings, plugins, and integrated tools for uninterrupted development.

### Business & Productivity Software

- [Onboarding Checklists](https://awesome-repositories.com/f/business-productivity-software/team-onboarding/onboarding-accelerators/onboarding-checklists.md) — Provides a step-by-step walkthrough for configuring Git, shell, IDE, and system preferences for macOS development.

### Operating Systems & Systems Programming

- [Terminal Customization](https://awesome-repositories.com/f/operating-systems-systems-programming/terminal-command-line-environments/terminal-customization-tools/terminal-customization.md) — Customizes the macOS terminal with Oh My Zsh, fuzzy finders, keyboard shortcuts, and visual themes.
- [Shell Framework Configurations](https://awesome-repositories.com/f/operating-systems-systems-programming/terminal-command-line-environments/terminal-customization-tools/terminal-customization/shell-framework-configurations.md) — Documents how to install and configure Oh My Zsh, fuzzy finders, and keyboard shortcuts for an improved command-line experience.
