explaingit

macdao/ocds-guide-to-setting-up-mac

4,552Audience · developerComplexity · 1/5Setup · easy

TLDR

An opinionated, regularly updated guide for setting up a Mac as an efficient developer workstation, covering system settings, keyboard configuration, and automation principles, written in Chinese with an English version available.

Mindmap

mindmap
  root((mac setup guide))
    Principles
      Automation
      Consistency
      Built-in tools first
      Speed focus
    System settings
      Trackpad config
      Function keys
      Keyboard shortcuts
      Cursor speed
    Applications
      Dock cleanup
      Launchpad reset
      Safari settings
    Audience
      Developers
      Pair programmers
Click or tap to explore — scroll the page freely

Code map

Detail Auto

An interactive map of this repo's files and how they connect — its source is parsed live in your browser. Click Visualize to build it.

filefunction / class

Things people build with this

USE CASE 1

Follow a checklist to configure a new Mac for software development from initial unboxing

USE CASE 2

Apply recommended trackpad, keyboard repeat, and function key settings to speed up daily developer workflows

USE CASE 3

Set up consistent keyboard shortcuts and environments across a pair-programming team

USE CASE 4

Automate Mac setup using command-line tools rather than clicking through system preferences manually

Tech stack

ShellmacOS

Getting it running

Difficulty · easy Time to first run · 1h+

Steps must be applied manually, some sections are labeled as strongly opinionated personal preferences.

In plain English

This repository is a personal guide, written in Chinese, for configuring a Mac to work as efficiently as possible. The author originally wrote it in 2015 on a 2013 MacBook Pro running OS X El Capitan, updated it in 2019 for a newer machine running macOS Catalina, and updated it again in 2024 for an M3 Max MacBook Pro on macOS Sonoma. An English version is linked from the top of the document. The guide reflects one developer's preferences and is openly labeled as opinionated in certain sections. The author's four guiding principles are: automation (use a command to install things rather than clicking through a website), consistency (keep keyboard shortcuts and environments the same across a team, especially when pair programming), using built-in tools where they are sufficient, and prioritizing speed throughout. The guide covers macOS system settings first, walking through trackpad configuration, how to turn function keys into standard F1-F12 keys for developer tools, enabling full keyboard navigation in dialog boxes, adjusting cursor repeat speed, and configuring input method switching shortcuts. Beyond system settings, the guide covers how to remove all fixed icons from the Dock so only currently open apps appear, how to reset Launchpad icon order to system defaults, and how to set Safari to reopen all windows from the last session. It also includes a terminal command to view current battery charging wattage, and tips for using the built-in macOS text-to-speech command for task notifications. The guide is structured as a living document the author continues to update as macOS changes. Readers are invited to submit their own tips through GitHub Issues or pull requests. Sections marked with [OCD] reflect particularly strong personal preferences, and the author notes that readers who disagree with those choices should feel free to skip them.

Copy-paste prompts

Prompt 1
I just got a new MacBook Pro and I am a developer. Walk me through the most important system settings to change first based on automation and speed principles.
Prompt 2
How do I configure macOS so that F1-F12 behave as standard function keys by default without holding Fn, and what other keyboard settings help developers?
Prompt 3
I want to set up a new team Mac consistently. What command-line tools or scripts can I use to automate common developer setup steps on macOS?
Prompt 4
The OCDS Mac guide recommends removing fixed Dock icons. Walk me through cleaning up the Dock and setting it to show only running apps on macOS.
Open on GitHub → Explain another repo

← macdao on gitmyhub — every repo by this author, as a profile.

Verify against the repo before relying on details.