Skip to content

About

🔧 .files, including ~/.macos — sensible defaults for macOS development (catered to Node.js)

Resources

Stars

12 stars

Watchers

0 watching

Forks

 
 

Repository files navigation

Dustin's dotfiles (fork of mathias')

Screenshot of my shell prompt

Installation

Note: this is a fork of mathiasbyrnes/dotfiles. Check out the original for the latest and greatest.

Warning: If you want to give these dotfiles a try, you should first fork this repository, review the code, and remove things you don’t want or need. Don’t blindly use my settings unless you know what that entails. Use at your own risk!

  1. Clone: git clone https://github.com/DSchau/dotfiles.git
  2. ./init/init.sh: creates ~/Projects/{Personal,Work,Scripts}, copies scripts and Ghostty config, creates an SSH key and ~/.ssh/config, and installs oh-my-zsh, nvm and bun
  3. ./bootstrap.sh: copies the dotfiles (.zshrc, .bash_profile, .aliases, …) into ~, copies Claude Code commands to ~/.claude/commands, sets up pi and syncs Zed
  4. ./brew.sh: installs Homebrew, CLI tools and apps (casks)
  5. ./init/mas.sh: installs the Mac App Store apps listed in init/mas_apps.txt (sign in to the App Store first)
  6. ./.macos: sets macOS defaults
  7. Optional: ./git.sh clones the repos in git_repos.txt into ~/Projects/{Personal,Work/<Org>}

./init/doctor.sh lists missing brew casks / App Store apps and checks global dependencies.

To update, from this repo: source bootstrap.sh (use set -- -f; source bootstrap.sh to skip the prompt).

pi

bootstrap.sh installs pi if it's missing (to ~/.pi/agent, added to $PATH in .bash_profile). It then merges pi/settings.json into ~/.pi/agent/settings.json and installs the packages listed there (e.g. pi-open-tui). The repo's packages list replaces your local one.

The default provider is OpenRouter. The API key is not committed. Create one at openrouter.ai/keys, then run /login in pi. pi saves it to ~/.pi/agent/auth.json, outside the repo. pi also reads an OPENROUTER_API_KEY environment variable if one is set.

Zed

init/Zed is the source of truth. bootstrap.sh overwrites ~/.config/zed/settings.json and keymap.json. Extensions are installed by Zed itself from auto_install_extensions. It also links the zed CLI into ~/.local/bin.

  • Dracula Pro is paid and not committed: bootstrap.sh copies the Zed theme from iCloud if it's there
  • The editor font (Fira Code) is installed by brew.sh

Local overrides

  • ~/.path: sourced first; use it to extend $PATH, e.g. export PATH="/usr/local/bin:$PATH"
  • ~/.extra: extra settings (git name/email); tracked and copied by bootstrap.sh

Feedback

Suggestions/improvements welcome!

If specific to this repository, feel free to use these issues.

Author

Original author

twitter/mathias
Mathias Bynens

Thanks to…

About

🔧 .files, including ~/.macos — sensible defaults for macOS development (catered to Node.js)

Resources

Stars

12 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages