My personal cross-platform dotfiles for macOS and Omarchy. This is a living config that changes as I try new tools and workflows. If you found this from one of my YouTube videos, you're in the right place.
From a checkout of this repository:
./install.shThe installer uses GNU Stow to install common, then the platform package:
macos on macOS or omarchy on Omarchy. It leaves Omarchy's shell.json
unmanaged because it contains local calendar configuration.
Theme configuration is platform-specific. The macOS theme is documented in
macos/README.md; Omarchy uses its active system theme, including the personal
damian-galarza theme in this repository.
Starship handles the shared prompt. It uses a minimal layout with the directory on the left and git info (branch, state, status) on the right.
Key settings:
- Prefix:
Ctrl-s - Status bar at the top
- Vi mode for copy
- Mouse enabled
- Sessions persist and auto-restore via resurrect + continuum
Plugins managed by TPM:
| Plugin | Purpose |
|---|---|
| tmux-sensible | Sensible defaults |
| tmux-yank | System clipboard integration |
| tmux-resurrect | Save and restore sessions |
| tmux-continuum | Automatic session saving |
| tmux-battery | Battery status in status bar |
| tmux-fzf | Fuzzy finder integration |
| tmux-fzf-url | Open URLs from the terminal |
| tmux-sessionx | Session management with fzf and zoxide |
| tmux-floax | Floating pane toggle |
| tmux-huckleberry | Git branch switcher |
| Tool | Purpose |
|---|---|
| Eza | Modern ls with git integration |
| Zoxide | Smart cd that learns directories |
| Atuin | Interactive shell history with sync |
| Mise | Dev tool version manager |
| fzf | Fuzzy finder (used in Tmux and Neovim) |
macOS window-management details are documented in macos/README.md. Omarchy
window management is provided by Omarchy and customized under omarchy/ in
this repository.
Core settings:
- Fast-forward only merges (
merge.ff = only) - Autosquash on rebase (
rebase.autosquash = true) pfalias forpush --force-with-lease
Custom scripts in .local/bin/:
git upfetches origin and rebases onto the primary branchgit delete-branchremoves a branch from both remote and local
Shared global context lives in agents/AGENTS.md and is linked to the locations
expected by Codex, Pi, and Claude Code:
~/.codex/AGENTS.md~/.pi/agent/AGENTS.md~/.claude/CLAUDE.md
Run the setup script to create those links and install the Claude Code commands and skills:
./setup-agents.shPrivate skills, credentials, and other machine-specific agent state are intentionally not managed by this public repository.
common/— shared shell, Git, Tmux, Starship, and scriptsmacos/— AeroSpace, Ghostty, and the macOS Neovim configurationomarchy/— Hyprland, Omarchy Neovim, personal shell plugins, theme, and scriptsagents/— shared global agent context.claude/— Claude Code commands and skillssetup-agents.sh— links shared agent context and Claude Code resourcesinstall.sh— platform-aware Stow installer
Third-party Omarchy plugins such as omasnap, tobiasz-p.next-event, and
io.github.dgalarza.omarchy-buds are managed separately. The Buds plugin also
requires GalaxyBudsClient (the galaxybudsclient command).