Skip to content

Apple Silicon setup

LeoTM edited this page Oct 20, 2025 · 101 revisions

New machine

  • beta.apple.com > Guide for Beta Software > macOS
  • brew
    • adds eval "$(/opt/homebrew/bin/brew shellenv)" to shell config file
      • i.e. shell setup prepending $HOMEBREW_PREFIX/{bin,sbin} to $PATH before
        • /usr/local/bin
        • /System/Cryptexes/App/usr/bin
        • /usr/{bin,sbin}
        • /{bin,sbin}
        • /var/run/com.apple.security.cryptexd/codex.system/bootstrap/usr/local/bin
        • /var/run/com.apple.security.cryptexd/codex.system/bootstrap/usr/bin
        • /var/run/com.apple.security.cryptexd/codex.system/bootstrap/usr/appleinternal/bin
        • /Library/Apple/usr/bin

    You are using macOS 26.0. We do not provide support for this pre-release version. This installation may not succeed. After installation, you will encounter build failures with some formulae. Please create pull requests instead of asking for help on Homebrew's GitHub, Twitter or any other official channels. You are responsible for resolving any issues you experience while you are running this pre-release version.

  • choose your shell e.g.
    • brew install zsh
    • echo "$(brew --prefix)/bin/zsh" | sudo tee -a /etc/shells
    • chsh -s /opt/homebrew/bin/zsh (or via GUI System Settings)
    • choose framework or plugin manager
  • choose your terminal
  • choose your window manager
  • choose your node manager
  • choose your package manager
  • choose your ruby manager (e.g. rbenv)
    • per project gem install cocoapods
      • avoid modifying macOS system version with sudo
      • avoid project Gemfile conflicts with brew system version
  • brew install --cask zulu ⚠️πŸ”₯
    • open /opt/homebrew/Caskroom/zulu/<ver>,<ver> install JDK
  • choose your java manager e.g. jenv
    • jenv add /Library/Java/JavaVirtualMachines/zulu-25.jdk/Contents/Home
    • jenv versions
  • choose your AI CLI agent
  • android-studio-preview@canary ⚠️πŸ”₯
    • android-studio-2025.1.4.4-mac_arm.dmg (1.43GB)
    • if boot fails, revert/downgrade to prev canary
  • Xcode (stable/rc/beta) ⚠️πŸ”₯ most Homebrew formulae need a compiler, a few need a full Xcode install
    • xcodebuild -version && lipo -archs $(which xcodebuild)
    • sudo xcode-select --switch /Applications/Xcode-beta.app
    • xcode-select --install (CLI tools)
      • /Library/Developer/CommandLineTools/usr/bin/ e.g. git, clang, gcc, make, xcrun
      • /usr/bin/ lightweight shims calling xcrun
    • sudo xcodebuild -license accept
    • xcodebuild -runFirstLaunch
    • xcodebuild -downloadPlatform iOS
      • iOS 26.1 Simulator (23B5059e) (arm64): 8.72 GB
  • Setting up the development environment @next ⚠️πŸ”₯ per OS
+
  • night shift / (flux)
  • vpn
  • git
  • github
  • docker (requires macOS Rosetta 2 for Intel emu)
  • act
    • act --container-architecture linux/amd64 -l
    • act --container-architecture linux/amd64 -P ubuntu-latest=catthehacker/ubuntu:js-latest -j test
  • visual-studio-code@insiders ⚠️πŸ”₯
    • git config --global core.editor "code-insiders --wait"
++
  • brave-browser@nightly ⚠️πŸ”₯
    • open -a 'Brave Browser Nightly'
  • ccache
  • negative
  • fastlane
  • scrcpy / vysor
  • OpenMTP/LocalSend/MacDroid
    • brew install --cask <openmtp/localsend/macdroid>
    • device: Settings>About>BuildNo (tap 7x)
    • device: Settings>System>DevOps>USBdebugging
    • adb devices

Backing up

  • macOS > Time Machine
  • Carbon Copy Cloner

Erasing


> uname -v # M2 Pro
# Darwin Kernel Version 25.0.0: Thu Aug 14 22:03:32 PDT 2025; root:xnu-12377.1.8~5/RELEASE_ARM64_T6020
# WTF is XNU? https://github.com/apple-oss-distributions/xnu

> sw_vers
# ProductName:		macOS
# ProductVersion:		26.0
# BuildVersion:		25A5349a

> ruby -v
# ruby 2.6.10p210 (2022-04-12 revision 67958) [universal.arm64e-darwin25]
# Default bins
ls -l /usr/bin /bin /usr/sbin /sbin /usr/libexec
# Default $PATH
/usr/local/bin:/System/Cryptexes/App/usr/bin:/usr/bin:/bin:/usr/sbin:/sbin:/var/run/com.apple.security.cryptexd/codex.system/bootstrap/usr/local/bin:/var/run/com.apple.security.cryptexd/codex.system/bootstrap/usr/bin:/var/run/com.apple.security.cryptexd/codex.system/bootstrap/usr/appleinternal/bin
# User login items
sfltool dumpbtm # SharedFileList BackgroundTaskManagement

# /Library/Launch{Daemons,Agents}
# /System/Library/Launch{Daemons,Agents}

npx clear-npx-cache nb

adb reverse tcp:8081 tcp:8081 Metro <-> Android

brew update && brew outdated --greedy && brew upgrade --greedy && brew cleanup πŸ”₯

whereis ignores $PATH

Clone this wiki locally