This file provides guidance to Claude Code (claude.ai/code) when working with code in this repository.
This is a dotfiles repository for managing configurations for various tools including git, mutt, neovim, asdf, and taskwarrior. The repository uses GNU Stow for symlink management.
make all- Install all dotfile configurations using stowmake clean- Remove all symlinked configurationsmake <package>- Install specific package (e.g.,make neovim,make git)make clean_<package>- Remove specific package configuration
stow --no-folding --target=${HOME} <package>- Install specific package manuallystow --target=${HOME} --delete <package>- Remove specific package manually
Each tool configuration is organized as a separate "package" directory:
asdf/- Version manager tool versions (.tool-versions)git/- Git configuration (.gitconfig with GPG signing enabled)mutt/- Email client configuration (mbsync, msmtp, mutt configs)neovim/- Neovim configuration (Lua-based config with lazy.nvim)taskwarrior/- Task management (task, timewarrior, bugwarrior configs)
- Uses GNU Stow with
--no-foldingflag to maintain directory structures - Each package directory mirrors the target structure under
$HOME - Configuration files are placed in their expected locations (e.g.,
.config/nvim/)
- Neovim: Lua-based configuration with lazy.nvim plugin manager
- Git: GPG signing enabled, nvimdiff3 as merge tool
- ASDF: Managing Node.js, Erlang, and Elixir versions
- Taskwarrior ecosystem: Task, Timewarrior, and Bugwarrior integration
- Neovim configuration uses lazy.nvim and has a placeholder Makefile
- Git configuration includes GPG signing and verbose commits
- Taskwarrior setup includes systemd service configurations
- All packages can be installed individually or collectively via the main Makefile