All Projects → twpayne → Chezmoi

twpayne / Chezmoi

Licence: mit
Manage your dotfiles across multiple diverse machines, securely.

Programming Languages

go
31211 projects - #10 most used programming language
shell
77523 projects
powershell
5483 projects

Projects that are alternatives of or similar to Chezmoi

Yadm
Yet Another Dotfiles Manager
Stars: ✭ 2,982 (-46.65%)
Mutual labels:  dotfiles, yadm, dotfile-manager, dotfile-management, multiple-machines
Tmux Config
📗 Example tmux configuration - screen + vim key-bindings, system stat, cpu load bar.
Stars: ✭ 1,633 (-70.79%)
Mutual labels:  dotfiles, configuration, dotfile
gnome-pass-search-provider
Pass password manager search provider for gnome-shell
Stars: ✭ 52 (-99.07%)
Mutual labels:  pass, bitwarden
dotfiles
Arch and bspwm dotfiles
Stars: ✭ 21 (-99.62%)
Mutual labels:  configuration, dotfile
dotpr0n
Dotfiles for macOS, FreeBSD, fish, tmux, custom functions and lots more. Peekaboo!
Stars: ✭ 44 (-99.21%)
Mutual labels:  dotfiles, yadm
dotfiles
my dotfiles
Stars: ✭ 14 (-99.75%)
Mutual labels:  configuration, dotfile
dotfiles
shell, git, vim, tmux .etc dotfiles, managed via gnu stow
Stars: ✭ 20 (-99.64%)
Mutual labels:  stow, dotfile
dotfiles
cross-platform (linux (arch), macos, android (termux), windows (WSL)) dotfiles and scripts, using yadm
Stars: ✭ 17 (-99.7%)
Mutual labels:  dotfiles, yadm
.tmux
🇫🇷 Oh my tmux! My self-contained, pretty & versatile tmux configuration made with ❤️
Stars: ✭ 15,594 (+178.96%)
Mutual labels:  dotfiles, configuration
eRCaGuy dotfiles
.bashrc file, terminal prompt that shows current git branch, Arduino setup, Eclipse setup, git diff with line numbers, helpful scripts, improved Linux productivity, etc.
Stars: ✭ 84 (-98.5%)
Mutual labels:  dotfiles, configuration
dotfiles
personal dotfiles with stow
Stars: ✭ 16 (-99.71%)
Mutual labels:  dotfiles, stow
dotfiles
🏠 dotfiles for my macOS environment
Stars: ✭ 17 (-99.7%)
Mutual labels:  dotfiles, dotfile-management
toml-bombadil
A dotfile manager with templating
Stars: ✭ 127 (-97.73%)
Mutual labels:  dotfile-manager, dotfile
buttercup-importer
🎣 3rd-party archive importer for Buttercup
Stars: ✭ 39 (-99.3%)
Mutual labels:  lastpass, 1password
dotfiles
🔧 .files - different setups separated in branches
Stars: ✭ 168 (-96.99%)
Mutual labels:  configuration, yadm
kubectl-passman
kubectl plugin that provides the missing link/glue between common password managers and kubectl
Stars: ✭ 69 (-98.77%)
Mutual labels:  keychain, 1password
DotFiles
🎨 one-stop service for you to configure many Unix tools.
Stars: ✭ 29 (-99.48%)
Mutual labels:  configuration, dotfile
Ansible Role Dotfiles
Ansible Role - Easy and flexible dotfile installation.
Stars: ✭ 133 (-97.62%)
Mutual labels:  dotfiles, configuration
zshrc
📝 Zsh Configuration for nerds with zplug
Stars: ✭ 28 (-99.5%)
Mutual labels:  dotfiles, configuration
dotfiles
Config files for i3, polybar, rofi, mpv, Xresources, kitty and some bash-things...
Stars: ✭ 52 (-99.07%)
Mutual labels:  dotfiles, dotbot

chezmoi logo chezmoi

GitHub Release

Manage your dotfiles across multiple diverse machines, securely.

With chezmoi, you can install chezmoi and your dotfiles on a new, empty machine with a single command:

$ sh -c "$(curl -fsLS git.io/chezmoi)" -- init --apply <github-username>

Updating your dotfiles on any machine is a single command:

$ chezmoi update


How do I start with chezmoi now?

Install chezmoi then read the quick start guide. The how-to guide covers most common tasks, and there's both documentation on templating and frequently asked questions for specific questions. You can browse other people's dotfiles that use chezmoi on GitHub and dotfiles that use chezmoi on GitLab, and see how chezmoi compares to other dotfile managers. For a full description of chezmoi, consult the reference.


What does chezmoi do and why should I use it?

chezmoi helps you manage your personal configuration files (dotfiles, like ~/.gitconfig) across multiple machines.

chezmoi is helpful if you have spent time customizing the tools you use (e.g. shells, editors, and version control systems) and want to keep machines running different accounts (e.g. home and work) and/or different operating systems (e.g. Linux, macOS, and Windows) in sync, while still being able to easily cope with differences from machine to machine.

chezmoi scales from the trivial (e.g. copying a few dotfiles onto a Raspberry Pi, development container, or virtual machine) to complex long-lived multi-machine development environments (e.g. keeping any number of home and work, Linux, macOS, and Windows machines in sync). In all cases you only need to maintain a single source of truth (a single branch in git) and getting started only requires adding a single binary to your machine (which you can do with curl, wget, or scp).

chezmoi has strong support for security, allowing you to manage secrets (e.g. passwords, access tokens, and private keys) securely and seamlessly using a password manager and/or encrypt whole files with your favorite encryption tool.

If you do not personalize your configuration or only ever use a single operating system with a single account and none of your dotfiles contain secrets then you don't need chezmoi. Otherwise, read on...


What are chezmoi's key features?

Flexible

You can share as much configuration across machines as you want, while still being able to control machine-specific details. Your dotfiles can be templates (using text/template syntax). Predefined variables allow you to change behavior depending on operating system, architecture, and hostname. chezmoi runs on all commonly-used platforms, like Linux, macOS, and Windows. It also runs on less commonly-used platforms, like FreeBSD, OpenBSD, and Termux.

Personal and secure

Nothing leaves your machine, unless you want it to. Your configuration remains in a git repo under your control. You can write the configuration file in the format of your choice. chezmoi can retrieve secrets from 1Password, Bitwarden, gopass, KeePassXC, LastPass, pass, Vault, Keychain, Keyring, or any command-line utility of your choice. You can encrypt individual files with GnuPG or age. You can checkout your dotfiles repo on as many machines as you want without revealing any secrets to anyone.

Transparent

chezmoi includes verbose and dry run modes so you can review exactly what changes it will make to your home directory before making them. chezmoi's source format uses only regular files and directories that map one-to-one with the files, directories, and symlinks in your home directory that you choose to manage. If you decide not to use chezmoi in the future, it is easy to move your data elsewhere.

Declarative and robust

You declare the desired state of files, directories, and symbolic links in your source of truth and chezmoi updates your home directory to match that state. What you want is what you get. chezmoi updates all files and symbolic links atomically. You will never be left with incomplete files that could lock you out, even if the update process is interrupted.

Fast and easy to use

Using chezmoi feels like using git: the commands are similar and chezmoi runs in fractions of a second. chezmoi makes most day-to-day operations one line commands, including installation, initialization, and keeping your machines up-to-date. chezmoi can pull and apply changes from your dotfiles repo in a single command, and automatically commit and push changes.


I already have a system to manage my dotfiles, why should I use chezmoi?

Read the comparison of chezmoi to other dotfile managers.


How do people use chezmoi?

Dotfile repos using chezmoi

Have a look at people using chezmoi on GitHub and on GitLab.

People talking about chezmoi

Read what people have said about chezmoi.


What documentation is available?


License

MIT


Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].