New MacBook Setup

Record the setup process after getting my new MacBook, including system settings, software recommendations, accessory selection, usage experience, and other related content.

June is here again, and the temperature is climbing fast.

My ITX desktop sitting next to me has basically turned into a space heater—hot, noisy, and impossible to ignore. On the other side, my Intel-based MacBook Pro, when hooked up to an external monitor, starts sounding like a jet engine even under light workloads. With these two “old warriors” running side by side, my bedroom is easily a couple of degrees warmer than the living room. And performance-wise, they’re no longer keeping up with today’s development workloads. That alone is reason enough for an upgrade.

So the real question is: what should I get next?

After a fairly long period of hesitation and comparison, I finally settled on a 13-inch sky blue MacBook Air M5 with 32GB of RAM and a 1TB SSD. On JD.com, I stacked China’s national subsidy (-1,500 RMB) with Apple’s education discount (-800 RMB), bringing the final price down to 10,549 RMB. This purchase gave me yet another reminder of how aggressively Apple prices memory and storage. Let’s just say it’s… priced like gold.

Originally, I wanted the silver model. It’s the classic, timeless Apple color—you really can’t go wrong with it. But it had been out of stock for months, and the sky blue version was the only one available. So I went with it.

Turns out, it was a pleasant surprise. Outdoors, the blue is obvious and vibrant. Indoors, it shifts into a soft silver-gray tone depending on the lighting. It almost feels like I ended up with two different colorways in one device.

Not a bad trade.

Settings

System Settings

Battery

I keep my Mac plugged in most of the time, so I set a charge limit to extend battery lifespan. This is a built-in feature introduced in macOS 26.4, whereas I previously had to rely on third-party tools like AlDente.

Go to:
System Settings → Battery → click the ⓘ (Info) button next to Battery Health

Then:

  • Turn on Optimized Battery Charging
  • Set Charge Limit to 80%

The notch on the MacBook display splits the menu bar into two sections, which can be annoying in practice. When there are too many menu bar icons, some of them get hidden behind the notch.

To fix this, I manually remove unnecessary menu bar items: hold Command (⌘) and drag the icon downward out of the menu bar to remove it

Accessibility → Pointer Control

  • Adjust Double-click speed
  • Trackpad Options:
    • Adjust Scrolling speed
    • Enable Use trackpad for dragging
    • Set dragging style to Drag Lock

With Drag Lock enabled:

  • Double-tap, then hold briefly on the second tap before lifting your finger → enters drag lock mode
  • You can release your finger while still dragging
  • Tap again to release the lock

This is especially useful when selecting large blocks of text.

Desktop & Dock

  • Change Click wallpaper to reveal desktopOnly in Stage Manager
  • Enable Drag windows to screen edges to tile
  • Enable Group windows by application
  • Set Hot Corners:
    • Top-left: Mission Control
    • Top-right: Application Windows
    • Bottom-left: App Exposé
    • Bottom-right: Desktop

Keyboard

  • Increase Key Repeat rate
  • Decrease Delay Until Repeat

Trackpad

  • Enable Tap to click
  • Set App Exposé to three-finger or four-finger swipe down

Finder Settings

Open Finder settings via: Menu bar → Finder → Settings

  • General
    • Enable: Open folders in tabs instead of new windows
    • Set New Finder windows show: a custom folder of your choice
  • Advanced
    • Show all filename extensions
    • When performing a search: Search the Current Folder
  • View
    • Show Path Bar
    • Customize Toolbar
    • View Options → Always open in Column View
  • Show hidden files
    • Shortcut: Shift + Command + .
    • Or permanently enable hidden files via Terminal:
      • defaults write com.apple.finder AppleShowAllFiles -bool true
      • killall Finder

Software Recommendations

Homebrew

Homebrew is a well-known package manager for macOS. In most cases, you can install software with a single command, which is significantly more convenient than on Windows.

Before installing Homebrew, you need to install Command Line Tools (CLT) for Xcode. There are two ways to do this:

  1. Run the following command in Terminal (no full Xcode required): xcode-select --install
  2. Alternatively, install the full Xcode from the App Store, then accept the license in Terminal: sudo xcodebuild -license accept

After that, install Homebrew by running:

1
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"

Verify installation:

1
brew doctor

Font

Development

Terminal

First, install some basic tools:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
brew install \
git \
git-gui \
wget \
curl \
tmux \
tree \
jq \
yq \
ripgrep \
fd \
bat \
htop \
peco \
fzf \
gpg \
cmake \
ffmpeg \
nmap \
vim \
nano

Then install the classic iTerm2 to replace the default terminal:

1
brew install --cask iterm2

Install Oh My Zsh:

1
sh -c "$(curl -fsSL https://raw.githubusercontent.com/ohmyzsh/ohmyzsh/master/tools/install.sh)"

Install some Zsh plugins:

1
2
3
4
brew install zsh-autosuggestions
brew install zsh-syntax-highlighting
brew install zoxide
brew install thefuck

Then add the following contents to your .zshrc file:

1
2
3
4
5
source $(brew --prefix)/share/zsh-autosuggestions/zsh-autosuggestions.zsh
source $(brew --prefix)/share/zsh-syntax-highlighting/zsh-syntax-highlighting.zsh

eval "$(zoxide init zsh)"
eval "$(thefuck --alias)"

Install Powerlevel10k and follow the setup guide to configure a more attractive theme:

1
2
brew install powerlevel10k
echo "source $(brew --prefix)/share/powerlevel10k/powerlevel10k.zsh-theme" >>~/.zshrc

Change Color Scheme

  • First, download the color scheme file, such as Atom One Dark,
  • Then, import the new color scheme in iTerm2’s settings
    • Click iTerm2 → Settings in the menu bar
    • Switch to the Profiles → Colors tab
    • Click Color Presets
    • Click Import, select the downloaded .itermcolors file, and import it

Dev Env Management

mise

Manage the versions of your developer tools on different projects with mise.

1
brew install mise

Enable mise in your terminal.

1
2
echo 'eval "$(mise activate zsh)"' >> ~/.zshrc
source ~/.zshrc

Verify installation:

1
mise doctor

uv

Use uv to manage Python virtual environments as an alternative to conda.

1
brew install uv

Verify installation:

1
uv --version

Language and Runtime

Python

1
mise use --global python@3.12

Verify installation:

1
python --version

Node.js

1
mise use --global node@22

Verify installation:

1
2
node -v
npm -v

Go

1
mise use --global go@latest

Verify installation:

1
go version

Ruby

1
2
brew install libyaml
mise use -g ruby@latest

.NET

1
mise use --global dotnet@8

Verify installation:

1
2
dotnet --version
dotnet --info

Dev Tools

VSCode

1
brew install --cask visual-studio-code

Android Studio

1
brew install --cask android-studio

OrbStack

Alternative to Docker Desktop

1
brew install --cask orbstack

Unity Hub

Unity still requires Rosetta for translation.

1
2
softwareupdate --install-rosetta --agree-to-license
brew install --cask unity-hub

Flutter

Install Flutter using VS Code

Use FVM to manage Flutter versions across different projects.

1
2
3
brew install fvm
dart pub global activate fvm
fvm flutter doctor

SourceTree

Git GUI

1
brew install --cask sourcetree

SSH and GPG

I have written a related blog post before. Please visit GitHub SSH Remote Connection Configuration and GPG Commit Signature Verification

Browser

Zen Browser

1
brew install --cask zen

Chrome

1
brew install --cask google-chrome

Security

LuLu

LuLu is a free, open-source firewall that blocks unknown outgoing connections.

1
brew install --cask lulu

KnockKnock

KnockKnock shows you what’s persistently installed on your Mac.

1
brew install --cask knockknock

BlockBlock

BlockBlock monitors common persistence locations and alerts whenever a new persistent component is added.

1
brew install --cask blockblock

KeePassXC

Cross-platform Password Manager.

1
brew install --cask keepassxc

Writing

Obsidian

Take notes with Markdown.

1
brew install --cask obsidian

Zotero

Organize your research source.

1
brew install --cask zotero

PDFgear

Free PDF editing tools that require manual download and installation: PDFgear

LaTeX

MacTeX, also needs to be downloaded and installed manually.

I previously wrote a blog post about the installation process, please visit: Quick Setup Guide for LaTeX in VSCode

Thunderbird

Email app.

1
brew install --cask thunderbird

EasyDict

Global Text Selection Translation and OCR Translation.

1
brew install --cask easydict

Media

IINA

Media player.

1
brew install --cask iina

OBS

Screen recording.

1
brew install --cask obs

Blender

3D modeling.

1
brew install --cask blender

Kdenlive

Video editor.

1
brew install --cask kdenlive

webp-automation

macOS automation to quickly resize images and convert to webp.

GIMP

Image editor.

1
brew install --cask gimp

Works best when used with PhotoGIMP

macshot

Screenshot.

1
brew install --cask macshot

File Management

Keka

An archive extraction tool, but the free version from Homebrew doesn’t have the preview feature for compressed files.

1
brew install --cask keka

PeaZip

PeaZip is an archiving tool that supports previewing compressed files. However, its right-click menu is located in a submenu, and you’ll need to download and install it manually.

LocalSend

Share files and messages with nearby devices over your local network.

1
brew install --cask localsend

OneDrive

1
brew install --cask onedrive

SourceCodeSyntaxHighlight

The application offers a Quick Look Extension for macOS 10.15 Catalina and later for previewing source files. Inside it uses Highlight to render source code with syntax highlighting.

1
brew install syntax-highlight

Utilities

I collected a set of small tools that improve productivity and overall user experience. You can pick and choose based on your own needs. Some of them felt very useful right after switching from Windows to macOS, but after using them for a while, I realized they were ultimately not that necessary.

Raycast

A collection of powerful productivity tools all within an extendable launcher.

1
brew install --cask raycast

Stats

A system monitor that lives in your menu bar

1
brew install stats

DockDoor

Free Alt+Tab and Native Dock Previews for Mac

1
brew install --cask dockdoor

HiddenBar

Utility to hide menu bar items.

1
brew install --cask hiddenbar

BetterDisplay

Enabling HiDPI on a 2K external monitor and monitor controls.

1
brew install --cask betterdisplay

PureMac

Application manager and system cleaner

1
brew install --cask puremac

FineTune

A menu bar app for per-app volume control.

1
brew install --cask finetune

MOS

Smooth scrolling for mouse wheels on macOS.

1
brew install --cask mos

BetterAndBetter

Keyboard, mouse and touchpad motion gestures.

1
brew install --cask betterandbetter

AltServer

Side loading apps to your iPhone

1
brew install --cask altserver

Windows App

Remote control your windows devices.

1
brew install --cask windows-app

RClick

This right-click menu tool can only be installed manually here . It enables operations such as creating new files via the right-click menu.

Karabiner-Elements

A powerful key remapper

1
brew install --cask karabiner-elements

Accessories

All of the accessories below were purchased from Taobao in China.

Sleeve

I bought the UGREEN LP187 sleeve for just 26.9 RMB. The 12-inch version fits the 13-inch MacBook Air almost perfectly—snug with no extra space.

The downside is obvious: there’s no shock-absorbing air padding around the edges. But at this price point, there’s not much to complain about.

Docking Station

Currently, I’m using an old Lenovo Type-C to 4×USB-A hub. The cable is too short, so plugging and unplugging it constantly puts strain on the MacBook.

I plan to replace it with the Acasis DS-9903 docking station. It has a much more complete set of ports:

  • 3× USB-A ports
  • 1× HDMI (4K@60Hz)
  • 1× Gigabit Ethernet
  • 1× 3.5mm audio jack
  • SD and TF card slots
  • USB-C PD passthrough charging

It also comes with a 1-meter cable, which is significantly more convenient for desk use.

Video Cable

I’m currently using a Type-C to DisplayPort cable from HAGiBiS (a typical “cyber electronics store” brand in China). It supports up to 8K@60Hz or 4K@144Hz.

If I switch to a dock with built-in video output, this cable will likely become unnecessary.

External Storage

Apple storage is still “priced like gold,” so external storage is essential if internal space is not enough.

I have an old Samsung 860 EVO SATA SSD, as well as a Kioxia RC10 NVMe SSD removed from my ITX build.

For the SATA drive, I simply used a UGREEN 2.5-inch enclosure and formatted it as APFS, mainly for Time Machine backups.

For the M.2 SSD, I’m planning to use a HAGiBiS enclosure (mainly for aesthetics). It uses a 9210CN controller, which is decent.

Some purchasing notes:

  • Prefer DRAM-less SSDs (lower heat output)
  • Good-value enclosures usually use 9210 or JMS583 controllers; 9210 tends to have better compatibility
  • ITGZ is often recommended for value, but the included cable is poor. Note that JiaYi, ITGZ, and Rihao are effectively from the same OEM.
  • Avoid “slide-in” (push-pull) designs; thermal pads often make poor contact, leading to worse heat dissipation
  • For long-term use, avoid cheap enclosures under 100 RMB if you care about TRIM support, which is rare at the very low end

Laptop Lift

A basic laptop lift. The goal is simple: align the MacBook display height with the external monitor to reduce neck strain.

Screen Cleaning

I use ZEISS isopropyl alcohol lens wipes and 3M microfiber cloths.

Cleaning process:

  1. Stand the MacBook vertically and use an air blower to remove dust
  2. Lightly dampen the microfiber cloth, then wipe the screen in a single direction
  3. Use isopropyl alcohol wipes for stubborn smudges

Unofficial Cooling Hack

The core issue with MacBook Air thermal performance is that Apple leaves a small gap between the CPU heat spreader area and the bottom chassis. This is reportedly related to regulatory constraints—there are claims that EU regulations limit surface temperatures on the bottom case to around the mid-40°C range.

The workaround is simple but clearly unofficial:

  • Open the bottom case
  • Place a thermal pad between the CPU shield area and the chassis
  • Use the bottom case as a passive heat spreader
  • Optionally use a small external fan blowing across the chassis under load

After this modification, thermal performance under sustained load can approach that of a single-fan MacBook Pro-class system, at a cost of under 200 RMB.

However, it is very much a “hack.” Important notes:

  1. Use silicone-free thermal pads, otherwise oil leakage can occur and leave permanent stains
  2. Under heavy load, the bottom case becomes extremely hot—lap use becomes unsafe
  3. Additional insulation near the battery may be needed, but this is debated since air itself is a poor conductor

Usage Experience

Before buying the MacBook Air, I was concerned about fanless thermal throttling. After using it for a while, it turned out to be mostly fine. Apple Silicon efficiency is genuinely extreme.

  • Daily workload: one external display, a browser with 20 tabs, background music playback, and VS Code
    • idle temperature around 30°C
    • system power draw around 7W
  • Flutter development with iOS Simulator (debug mode):
    • around 60°C; hot reload can push it to 80°C
    • no noticeable throttling, though my projects are relatively small
  • App builds:
    • CPU spikes to full load, temperature rises rapidly (hits peak within 1 second), then throttles
    • but temperatures drop quickly after compilation
    • even with throttling, it is still significantly faster than my old ITX setup (2+ minutes vs 20 seconds)
  • 32GB RAM:
    • typical usage around 20GB
    • many background utilities running
    • memory pressure has not turned yellow so far

Finally, the key point: fanless operation.

Especially at night, the silence is noticeable in a way you only appreciate after switching from a desktop or Intel machine.

No fans, no dust cleaning, no background noise—just a completely quiet system.