All my . files managed in one place using the GNU Stow pattern and an automated installer.
Each configuration lives in its own directory (a "stow package") and is symlinked into $HOME, making it easy to manage, version, and reproduce my environment.
This repository acts as a single source of truth, allowing me to sync and bootstrap the same setup across multiple machines by changing and maintaining just one source.
git clone https://github.com/mo1ein/dotted.git
cd dottedchmod +x install.sh
./install.shNote
Existing dotfiles are automatically backed up before creating symlinks to the new configuration files.
The installer detects your OS and picks the right package manager:
- macOS — installs Homebrew automatically if it's missing, then installs CLI tools with
brew install(frompackages-mac.txt) and GUI apps (Bruno, Ghostty, VLC) withbrew install --cask(fromcasks-mac.txt). - Debian/Ubuntu — installs packages from
packages.txtwithapt.
GNU Stow and Neovim are always installed first — Stow is required to symlink the dotfiles and Neovim for the editor config.
./install.sh --install-pkgs./install.sh --restoreeasy peasy lemon squeezy!