dotfiles#
Personal configs for fish, ghostty, git, and Neovim (LazyVim). Each top-level folder maps 1:1 to ~/.config/<name>/.
Install#
git clone <this-repo> ~/prg/dotfiles
cd ~/prg/dotfiles
# Symlink each folder into ~/.config/
for d in */; do
name="${d%/}"
[ "$name" = ".git" ] && continue
ln -sfn "$PWD/$name" "$HOME/.config/$name"
done
Prerequisites (macOS, Homebrew)#
brew install neovim git fish ripgrep fd
brew install --cask ghostty
xcode-select --install # C compiler for treesitter
First nvim launch bootstraps lazy.nvim and Mason auto-installs LSP servers and formatters on demand.
Layout#
| Folder | Contents |
|---|---|
nvim/ |
LazyVim-based Neovim config — catppuccin, blink.cmp, cmake-tools + overseer + just, nvim-dap (lldb), trailblazer, ufo folds |
fish/ |
Fish shell — conf.d, functions, completions, themes |
ghostty/ |
Ghostty terminal config + themes |
git/ |
Git config, attributes, ignore |
Updating#
cd ~/prg/dotfiles && git pull
Neovim plugin versions are pinned via nvim/lazy-lock.json; run :Lazy restore after pulling to match.