Skip to content

chezmoi

Manages your config dotfiles across multiple machines, with secrets kept safe.

Stars
22.1k
Forks
699
Licence
MIT
Language
Go
Last update
4 days ago
Type
Dev tool

What it is

chezmoi is a tool for keeping your personal configuration files (dotfiles, such as shell and editor settings) in sync across several computers. You store the desired versions in a source directory, and chezmoi applies them to each machine, adapting where they differ. The README describes it as a way to manage dotfiles securely, but it says little beyond the tagline and points to the documentation site for details.

  • Keep the same shell and editor configuration on a laptop and a work desktop
  • Store your dotfiles in a git repository and apply them on a new machine
  • Manage machine-specific differences in one set of config files

Great for

  • People who use more than one computer and want their settings to match
  • Developers who keep shell, editor, and git configs under version control
  • Users on macOS, Linux, or Windows, which the project topics list as supported platforms

Not ideal for

  • People who only use a single machine and have few config files, since the setup overhead may not pay off
  • Users who want a point-and-click settings app; chezmoi is a command-line tool
  • Anyone needing details on the secrets handling; the README does not describe how it works
Step-by-step guide: how to use chezmoiInstall, first run, examples, tips and FAQs

How to get it

  1. 1

    Install with a package manager

    Clone the repository

    git clone https://github.com/twpayne/chezmoi.git
  2. 2

    Run it

    • Install chezmoi using a method from the documentation at chezmoi.io
    • Initialize a source directory for your dotfiles
    • Add a config file to chezmoi and review the changes it would make
    • Apply the changes to your machine
  3. 3

    Get the most out of it

    • Read the full documentation at chezmoi.io for setup and templating features
    • Use the developer guide if you plan to contribute to the project
    • Keep your dotfile source directory in git to sync across machines

Downloads

Strengths

  • Written in Go, a language that typically produces a single distributable binary
  • MIT licensed, so it is free to use and modify
  • Active project with a large community, reflected in its star count and recent releases

Trade-offs

  • The README is minimal, so most usage detail lives on the external documentation site
  • Managing config across machines still requires learning its source-directory model
  • Claims about security depend on how you use it and are not explained in the README

How it compares

ProjectStarsTypeLevelUpdatedBest for
chezmoi (this)22.1kDev toolintermediate4 days agoPeople who use more than one computer and want their settings to match
wasmer21.2kDev toolintermediate4 days agoDevelopers who want to run untrusted or third-party code with explicit access controls
inshellisense10.8kDev toolbeginner7 days agoDevelopers who spend a lot of time in the terminal and want suggestions for unfamiliar command options
marktext63.5kAppbeginner4 days agoPeople who write notes or articles in Markdown and want a clean, minimal editor
atom60.7kAppbeginner3.8 years agoDevelopers who want a desktop code editor they can customize with packages
PowerShell56kCLIbeginner4 days agoDevelopers who script or automate tasks across Windows, Linux, and macOS

Stats synced from GitHub. The assessment above was drafted with AI from the project's README on 2026-10-29 and may miss recent changes — check the README before relying on a command. MIT licence: free to use, modify and distribute, including commercially, as long as you keep the copyright notice.