Skip to content
freddy5566Public

About

No description, website, or topics provided.

Resources

Stars

2 stars

Watchers

1 watching

Forks

Latest commit

 

History

43 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

dotfiles

My macOS setup: Ghostty + herdr, plus Karabiner-Elements and Claude Code settings.

iTerm2, vim, neovim and tmux are no longer used. Their old configs are still in git history.

What's in here

Path Linked/copied to Notes
ghostty/config ~/.config/ghostty/config (symlink) Dracula theme, MesloLGS NF 22, Option as Alt
herdr/config.toml ~/.config/herdr/config.toml (symlink) prefix alt+a, detach prefix+d
karabiner/karabiner.json ~/.config/karabiner/karabiner.json (symlink) swaps left Command/Option on two external keyboards (matched by vendor/product ID)
zsh/ sourced from ~/.zshrc zim + powerlevel10k, aliases and functions
claude/settings.json ~/.claude/settings.json (copy, only if missing) model, plugins, marketplaces, TUI mode

Requirements

Install

# One line (clones to ~/.dotfiles)
sh -c "$(curl -fsSL https://raw.githubusercontent.com/freddy5566/dotfiles/master/install.sh)"

# Or from a checkout
git clone https://github.com/freddy5566/dotfiles ~/developer/dotfiles
~/developer/dotfiles/install.sh

The script installs whatever is missing, then links the configs (existing files are moved to *.bak):

  1. Ghostty: brew install --cask ghostty
  2. Font: brew install --cask font-meslo-lg-nerd-font (the config uses MesloLGS NF)
  3. herdr: curl -fsSL https://herdr.dev/install.sh | sh (installs to ~/.local/bin; make sure that is on your PATH; update later with herdr update)
  4. zsh: installs zim and appends export DOTFILES=... / source .../zsh/.zshrc to ~/.zshrc (the old one is saved as .zshrc.bak)
  5. Karabiner-Elements: brew install --cask karabiner-elements. On first launch, grant it Input Monitoring and the driver/system extension in System Settings → Privacy & Security, or the key swaps won't apply.
  6. Claude Code settings, then herdr integration install claude if claude is installed

Claude Code itself is not installed by this script: see https://docs.claude.com/en/docs/claude-code/setup.

After installing

  • Open Ghostty and run herdr. Detach with Opt+a, d; run herdr again to reattach.
  • The herdr prefix is alt+a, which needs Option to act as Alt. This is already set in the Ghostty config (macos-option-as-alt = true). Option-typed characters like å no longer work.
  • Reload after editing configs: Ghostty with Cmd+Shift+, ; herdr with herdr server reload-config. Validate herdr with herdr config check.

Claude Code settings

claude/settings.json holds only the portable parts. Machine-specific bits stay local:

  • the herdr hook, added by herdr integration install claude
  • autoMode rules and settings.local.json permissions
  • skills and plugin caches under ~/.claude

It is copied rather than symlinked because Claude Code and herdr edit the live file. To sync changes back, compare and copy by hand:

diff ~/.claude/settings.json claude/settings.json

About

No description, website, or topics provided.

Resources

Stars

2 stars

Watchers

1 watching

Forks

Releases

Packages

Contributors

Languages