A lightweight, dependency-free tool that bootstraps your dotfiles with a simple install script.
Dotbot is a command-line tool that automates the setup of dotfiles—configuration files for tools like shells, editors, and version control. It solves the problem of manually copying or linking dozens of configuration files when setting up a new machine or syncing environments. By defining a simple YAML/JSON configuration, users can run a single install script to replicate their entire development environment.
Developers and system administrators who maintain dotfiles repositories and need a reliable, repeatable way to deploy configurations across multiple machines or after fresh OS installs.
Developers choose Dotbot for its simplicity, lack of dependencies, and idempotent design. Unlike heavier dotfiles managers, it focuses solely on bootstrapping, integrates with any version control system, and supports extensibility via plugins without imposing workflow constraints.
A tool that bootstraps your dotfiles ⚡️
Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.
Dotbot is self-contained and requires no external installation, allowing it to run immediately on any system with Python, as emphasized in the README's rationale section.
Configurations are designed to be repeatable without causing conflicts, with directives like 'relink' and 'force' ensuring safe updates, as highlighted in the configuration documentation.
Dotbot supports a wide range of community plugins for tasks like package management and secrets handling, listed on the wiki, enabling customization without core bloat.
It offers advanced linking features such as glob patterns, conditional execution with 'if', and both symlink and hardlink types, detailed in the link directive examples.
Initial integration requires manual steps like setting up submodules and configuring install scripts, which can be confusing compared to drop-in solutions, as noted in the getting started guide.
On Windows, Dotbot only works with Python 3.8+ and depends on system policies for symbolic links, as noted in the getting started section, restricting its use in some setups.
Core functionalities like package installation are outsourced to third-party plugins, which may be inconsistently maintained or have compatibility issues, adding dependency risk.