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 (3195 stars) is a lightweight standalone tool to bootstrap dotfiles, making it easy to have a “one click” installation/upgrade process for your dotfiles.
- chezmoi (2614 stars) makes it easy to manage your dotfiles across multiple machines, securely.
- rcm (2368 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 (2250 stars) by Josh Nichols. Homesick makes it easy to symlink and clone dotfiles repos.
- yadm (1684 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.
- vcsh (1637 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 (1611 stars) by Anders Ingemann is like Homesick but written in bash. Great to combine with myrepos.
- Home Manager (1242 stars) by Robert Helgesson is a system built for managing NixOS user environments using the Nix package manager and the Nixpkgs libraries.
- fresh (972 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 (652 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 (621 stars) lets you easily create lightweight backups of installed packages, applications, fonts and dotfiles, and automatically push them to a remote Git repository.
- Ellipsis (312 stars) is a package manager for dotfiles.
- Ghar (262 stars) by Brandon Philip. Ghar is a standalone Python script for managing Git repos symlinked into your home.
- Dotsync (235 stars) utility for syncing dotfiles between multiple machines from a Git repo or push using rsync.
- Homemaker (201 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 (197 stars) is inspired by homesick and Zach Holman’s dotfiles, made using principle of KISS.
- Pearl (154 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.
- dotgit (105 stars) by Kobus van Schoor. A comprehensive and versatile dotfiles manager which helps to synchronize your dotfiles between multiple computers and devices.
- dfm (102 stars) is a utility to manage your dotfiles, lightweight and simple.
- kody (101 stars) is a dotfiles runner/manager written with node inspired by Zach Holman’s popular dotfiles.