dcfa55ce49
* Support encryption with OpenSSL (#138) * Support "include" directive in built-in template processor (#255) * Support extensions for alternate files and templates (#257) * Improve support for default branches (#231, #232) * Add --version and --help as yadm internal commands (#267) * Improve support for XDG base directory specification * Use XDG_DATA_HOME used for encrypted data and repository (#208) * Default repo is now ~/.local/share/yadm/repo.git * Default encrypted archive is now ~/.local/share/yadm/archive * Improve shell completions (#238, #274, #275) * Remove support for YADM_COMPATIBILITY=1 (#242) * Remove deprecated option cygwin-copy * Fix template mode inheritance on FreeBSD (#243, #246) * Fix hook execution under MinGW (#150) * Improve compatibility with Oil shell (#210)
4.2 KiB
4.2 KiB
yadm - Yet Another Dotfiles Manager
yadm is a tool for managing dotfiles.
- Based on Git, with full range of Git's features
- Supports system-specific alternative files or templated files
- Encryption of private data using GnuPG, OpenSSL, transcrypt, or git-crypt
- Customizable initialization (bootstrapping)
- Customizable hooks for before and after any operation
Complete features, usage, examples and installation instructions can be found on the yadm.io website.
A very quick tour
# Initialize a new repository
yadm init
# Clone an existing repository
yadm clone <url>
# Add files/changes
yadm add <important file>
yadm commit
# Encrypt your ssh key
echo '.ssh/id_rsa' > ~/.config/yadm/encrypt
yadm encrypt
# Later, decrypt your ssh key
yadm decrypt
# Create different files for Linux vs MacOS
yadm add path/file.cfg##os.Linux
yadm add path/file.cfg##os.Darwin
If you enjoy using yadm, consider adding a star to the repository on GitHub. The star count helps others discover yadm.