Skip to content

About

Provisioning script for macOS

Resources

Stars

3 stars

Watchers

2 watching

Forks

Latest commit

 

History

138 Commits

Folders and files

Repository files navigation

macos-provisioning

Provisioning scripts and dotfiles to set up a macOS development environment from scratch.

Install

bash <(curl -L git.io/JMmQ0)

It configures git and an SSH key, clones this repository into ~/ghq/github.com/fujikky/macos-provisioning, then runs scripts/install.sh.

Layout

Path Description
install Entry point for a new machine
scripts/install.sh Installs Homebrew and runs each setup script in order
Brewfile Homebrew taps, formulae and casks installed by brew bundle
scripts/create_dotfiles.sh Symlinks dotfiles/ into the home directory
scripts/setup_macos.sh Applies macOS preferences (keyboard, trackpad, Dock)
scripts/setup_claude.sh Places the Claude Code settings
dotfiles/ Config files linked into the home directory

dotfiles/ is linked per directory, so files added after linking show up in this repository too. Only ~/.config/gh, where credentials live alongside the config, is linked per file.

Claude Code

scripts/setup_claude.sh places what is under dotfiles/.claude/.

  • CLAUDE.md and hooks/ are symlinked, so editing them updates this repository
  • settings.json is generated by merging settings.base.json into the local settings, because Claude Code rewrites keys such as enabledPlugins itself. $HOME is expanded when the script runs

Generated files under ~/.claude (cache, projects, history.jsonl) are not synced, and neither is the machine-local ~/.claude/settings.local.json.

Set up manually

  • macOS system settings that setup_macos.sh does not cover
  • gh auth login
  • Signing in to each app (1Password, Slack, browsers, ...)

About

Provisioning script for macOS

Resources

Stars

3 stars

Watchers

2 watching

Forks

Releases

Packages

Contributors

Languages