General-purpose dotfiles utilities
These are programs that help with managing, syncing, and/or installing your
- GNU Stow is a symlink farm manager, useful for automatically (and safely) linking your dotfiles folder into your home directory.
- Dotbot (2805 stars) is a lightweight standalone tool to bootstrap dotfiles, making it easy to have a “one click” installation/upgrade process for your dotfiles.
- rcm (2279 stars) is a set of well-documented shell scripts that help manage your dotfiles. It is easily installable on macOS with the homebrew package manager, but works on all Unix operating systems.
- Homesick (2207 stars) by Josh Nichols. Homesick makes it easy to symlink and clone dotfiles repos.
- chezmoi (2154 stars) makes it easy to manage your dotfiles across multiple machines, securely.
- vcsh (1594 stars) by Richard “RichiH” Hartmann.
vcsh manages all your dotfiles in Git without the need for symlinks. Any number of Git repositories will co-exist in parallel in your
$HOME without interfering with each other. Advanced use cases with different branches for different systems are supported by default. An extensive hook system lets you customize your repositories.
vcsh includes batch push, pull, and status commands which operate on all your repositories at once.
- Homeshick (1553 stars) by Anders Ingemann is like Homesick but written in bash. Great to combine with myrepos.
- yadm (1470 stars) is a dotfile management tool which supports system-specific alternate files/templating, enryption of private data, custom bootstrap actions, and integration with other git-aware tools like vim-fugitive, tig, git-crypt, etc.
- Home Manager (970 stars) by Robert Helgesson is a system built for managing NixOS user environments using the Nix package manager and the Nixpkgs libraries.
- fresh (948 stars) is a tool to source dotfiles from others into your own. It supports shell configuration (aliases, functions, etc.) as well as config files (e.g.
gitconfig). Think of it as Bundler for your dotfiles.
- dotdrop (567 stars) makes the management of dotfiles between different hosts easy. It allows to store your dotfiles on git and automagically deploy different versions on different setups.
- shallow-backup (513 stars) lets you easily create lightweight backups of installed packages, applications, fonts and dotfiles, and automatically push them to a remote Git repository.
- Ellipsis (305 stars) is a package manager for dotfiles.
- Ghar (260 stars) by Brandon Philip. Ghar is a standalone Python script for managing Git repos symlinked into your home.
- Dotsync (219 stars) utility for syncing dotfiles between multiple machines from a Git repo or push using rsync.
- Homemaker (191 stars) by Alex Yatskov. Homemaker is a standalone tool written in Golang to manage both common and machine-specific dotfile settings. Homemaker can be configured in TOML, YAML or JSON.
- dotfiler (188 stars) is inspired by homesick and Zach Holman’s dotfiles, made using principle of KISS.
- Pearl (134 stars) is a brand new revolutionary package manager that allows to automatically activate dotfiles whenever shells or editors start via a smart hook mechanism. Dotfiles are treated as packages that coexist together seamlessly and can be fully controlled and synced across different systems. There is a wide range of packages already available in the Official Pearl Hub.
- dfm (101 stars) is a utility to manage your dotfiles, lightweight and simple.