Yet Another Dotfiles Manager
650644cfb8
local_class -> YADM_CLASS local_system -> YADM_OS local_host -> YADM_HOSTNAME local_user -> YADM_USER local_distro -> YADM_DISTRO The new names match the names used for j2/esh templates. |
||
---|---|---|
.github | ||
completion | ||
contrib | ||
test | ||
.gitattributes | ||
.gitignore | ||
bootstrap | ||
CHANGES | ||
CONTRIBUTORS | ||
LICENSE | ||
Makefile | ||
pylintrc | ||
pytest.ini | ||
README.md | ||
yadm | ||
yadm.1 | ||
yadm.md | ||
yadm.spec |
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.