My handcrafted & personal dotfiles for macOS.
-
Clone this repo into
~/.config(or copy it there). -
Run:
bash ~/.config/bootstrap.sh
This will install Homebrew (if missing) and then run every
bootstrap/**/install-*.sh script (recursively).
- macOS machine with GUI (many installs are
brew install --cask ...apps). - Homebrew is the package manager used by
bootstrap.sh. - Some configs are inherently per-user/per-machine and should not be shared verbatim (see below).
Safe to share (generally):
bootstrap/install scriptsfish/functions and conf.d scripts (if they don’t embed absolute paths)hammerspoon/configprettier/config
Per-user / do not commit / keep local:
.versions(generated on each bootstrap run).java-default(persisted default forsetjava)gh/hosts.yml(may contain auth tokens depending onghsetup)- App configs that embed absolute home paths (e.g.
spicetify/config-xpui.ini)
scripts/check.shrunsshellcheckagainstbootstrap/**/*.sh(ifshellcheckis installed).
setjava 17switches toopenjdk@17for the current shell.setjava 21persists the selection for new shells by default.setjava 21 --sessionswitches only for the current shell session.setjava openjdkswitches to the latestopenjdkformula.setjava listshows installed Homebrew JDKs and current/default state.setjava systemclears managedJAVA_HOMEand Java PATH overrides.