Damian's Dotfiles
Personal macOS development environment. Uses GNU Stow for symlink management, pixi for CLI tools, and Homebrew for macOS apps. Bundles a personal Claude Code plugin marketplace (dotfile-plugins) for MCP servers and hooks.
Structure mirrors the Kin data team's data-dotfiles — see Personal divergences for where this repo deliberately differs.
Quick Start (Fresh Machine)
git clone https://github.com/eraliod/dotfiles ~/dotfiles
cd ~/dotfiles && ./install.sh
You'll be prompted for your password and git credentials along the way. Restart your terminal when the installer finishes.
Already Have an Existing Setup?
Use adopt mode to pull your current configs into the repo, then diff against the baseline:
cd ~/dotfiles && ./install.sh --adopt
git diff
From there, either accept the repo defaults (git checkout -- .) or commit your local additions to a branch.
Use force mode to reset to the repo baseline (existing files get backed up to .backup/<timestamp>/):
./install.sh --force
What Gets Installed
- Homebrew — formulae, casks, and fonts (see
packages/Brewfile)
- Oh My Zsh — with Powerlevel10k theme
- pixi — global CLI tools (see
stow/pixi/.pixi/manifests/pixi-global.toml), including awscli
- Shell config — zsh with autocompletions, aliases, helper functions (
ap, dp, gbdg, gbda, get-uuid)
- VS Code — settings and extensions
- Claude Code — settings, statusline, and the
dotfile-plugins marketplace
Claude Code
The installer enables the personal dotfile-plugins marketplace, which currently exposes three plugins:
| Plugin | What it does |
|---|
excalidraw-preview | Local browser preview server for Excalidraw MCP diagrams; PostToolUse writes updates live |
redshift-mcp | Declarative MCP servers for redshift-legacy, redshift-analytics-dev, -prod |
databricks-mcp-custom | Personal Databricks MCP profiles + OAuth token expiry check via PreToolUse hook |
Plugins are referenced from stow/claude/.claude/settings.json (enabledPlugins and extraKnownMarketplaces). Stow symlinks that file to ~/.claude/settings.json so Claude Code finds them automatically.
Post-install: existing user-scope MCP entries
If you previously used the old imperative claude mcp add flow for Databricks or Redshift servers, those entries still live in ~/.claude.json. Remove them so the plugin versions take effect:
claude mcp remove redshift-legacy
claude mcp remove redshift-analytics-dev
claude mcp remove redshift-analytics-prod
claude mcp remove databricks-dbsql-dev
claude mcp remove databricks-dbsql-prod
claude mcp remove databricks-dbsql-sandbox
claude mcp remove databricks-dbsql-adhoc-analysis
Post-install: Databricks auth
The Databricks proxy fetches a fresh OAuth token on each MCP server start via databricks auth token. If you see auth errors, run databricks auth login --profile <PROFILE> and then /mcp in Claude Code to restart the server.
Personal Divergences
This repo deliberately diverges from data-dotfiles in a few places:
| Concern | Team default | This repo |
|---|
| AWS CLI | brew "awscli" in Brewfile | In stow/pixi/.pixi/manifests/pixi-global.toml |
| Statusline | Separate statusline-command.sh file | Inline one-liner in stow/claude/.claude/settings.json |
| Shell theme | Spaceship | Powerlevel10k |
| Claude permissions/hooks | Team defaults | Personal set (see follow-ups) |
| AWS config | Tracked, with *-readonly SSO pattern | Not tracked yet (see follow-ups) |
.zprofile | Team version | Identical |
Stow Packages