| name | last commit | updated |
|---|---|---|
| common/ | Add Claude Code statusline, LSP plugins, and typesafe marketplace | 19 days ago |
| linux/ | fix confs | 2 months ago |
| macos/ | update brew files and add nanorc | 2 months ago |
| .gitignore | Add zsh, ssh, bin, gitbay, and claude packages | 20 days ago |
| LICENSE | Merge pull request #2 from ccleberg/chore/license-only | 1 month ago |
| README.org | switch to GNU Stow | 8 months ago |
Overview
This repository uses GNU Stow to manage dotfiles. Stow creates symbolic links from this directory to your home directory, keeping your configurations organized and version-controlled.
Directory Structure
Each top-level directory represents a "package." For example, here's the baseline at the time of writing this README:
| Program | Description |
|---|---|
doom |
Emacs configuration |
git |
Git global configuration |
ispell |
Dictionary and spellcheck settings |
skhd |
macOS hotkey daemon configuration |
yabai |
macOS tiling window manager configuration |
zsh |
Shell configuration and plugins |
Quick Start (Bootstrap)
For a fresh installation, run the provided bootstrap script. It will check for Stow and link all packages automatically.
chmod +x bootstrap.sh ./bootstrap.sh
Manual Usage
Stow a package
This creates the symlinks for a specific application.
stow <package_name>
Unstow a package
This removes the symlinks.
stow -D <package_name>
Restow (Update links)
Useful if you've added new files to a package and need to refresh the links.
stow -R <package_name>
Troubleshooting
If you see a conflict error (e.g., * existing target is neither a link nor a
directory), it means a physical file already exists where Stow is trying to
place a symlink.
- Backup the existing file:
mv ~/.zshrc ~/.zshrc.bak - Run stow again:
stow zsh - Verify: Check the link with
ls -l ~/.zshrc
Clone
SSHgit clone ssh://git@gitbay.org/cmc/dotfiles.git
HTTPSgit clone https://gitbay.org/cmc/dotfiles.git