Managed with thoughtbot's rcm: https://github.com/thoughtbot/rcm
common/: shared across macOS + Linux (currentlynvim,tmux).macos/dotfiles/: macOS-only dotfiles.macos/: macOS-only scripts + Brewfile.linux/: Linux notes + package lists (linux-only dotfiles go inlinux/dotfiles/).
macOS:
RCRC=~/projects/dotfiles/rcrc rcup -v- Optional bootstrap:
bash scripts/bootstrap/darwin.sh
Omarchy/Arch:
RCRC=~/Work/dotfiles/rcrc rcup -v- Package lists live in
linux/packages.txtandlinux/aur.txt.
Cursor settings are stored under macos/Library/Application Support/Cursor/User.
They are not auto-linked to avoid touching ~/Library. If you want them linked:
ln -s "$HOME/projects/dotfiles/macos/Library/Application Support/Cursor/User" "$HOME/Library/Application Support/Cursor/User"
Assumptions/requirements:
- Ruby + Bundler available (
bundlein PATH; mise shims are added). - Repo root detected by
Gemfileor.git. srbavailable for Sorbet (sorbet/configshould only include--flags; no--dir/--fileentries).- Ruby LSP starts via:
bundle exec ruby-lspif the repo includes the gem, else- composed bundle at
.ruby-lsp/Gemfile(setsBUNDLE_GEMFILE).
ruby-lspmay auto-runbundle installfor the composed bundle.- RuboCop LSP from Mason is disabled; diagnostics run through none-ls with
bundle exec rubocop. - Ruby formatting uses Syntax Tree (
bundle exec stree formatwhen aGemfileis present, else globalstree). - Set
NVIM_FORMAT_RUBY=0to disable Ruby auto-format on save. - Ruby LSP indexing excludes
tmp/,log/,coverage/,node_modules/,storage/,public/assets/,vendor/.
Thanks to the Mathias Bynes, Zach Holman, and Thoughtbot's excellent dotfiles, which these are based on.