Managed with GNU Stow for easy symlink management.
# macOS
brew install stow
# Linux
sudo apt install stow # Debian/Ubuntucd ~/dotfiles
stow -t ~ <package> # e.g., stow -t ~ zshFrom the dotfiles directory:
stow -t ~ <package>stow -D -t ~ <package>stow -R -t ~ <package>stow -t ~ */- Create package directory:
mkdir -p <package>/.config/<app> - Add config files following the home directory structure
- Symlink with
stow -t ~ <package>
How it works:
Stow creates symlinks by mirroring the directory structure from the package to the target directory (~). Files inside each package are structured as if the package directory itself is your home directory.
Example structure:
dotfiles/
├── zsh/
│ └── .zshrc → symlinks to ~/.zshrc
└── btop/
└── .config/
└── btop/
└── btop.conf → symlinks to ~/.config/btop/btop.conf
- Setup ssh key ⇒
ssh-keygen -t rsa
