Yet Another Dotfiles Manager
Go to file
Tim Byrne 76ce3defea
Changes for black compliance
2023-07-12 09:20:00 -05:00
.github Remove superfluous space 2022-08-27 13:55:24 -05:00
completion Remove trailing whitespace 2022-07-08 08:12:08 -05:00
contrib Remove trailing space 2022-06-03 15:49:14 -05:00
test Changes for black compliance 2023-07-12 09:20:00 -05:00
.flake8 Move all test/linting configs into pyproject.toml 2023-07-12 09:19:59 -05:00
.gitattributes Force `eol=lf` 2017-01-09 16:52:01 -06:00
.gitignore Use a common target to pick yadm to test in test/scripthost 2020-12-30 12:01:40 +01:00
CHANGES Update version number and update documentation 2023-01-23 13:25:54 -06:00
CONTRIBUTORS Update version number and update documentation 2023-01-23 13:25:54 -06:00
LICENSE Update GPLv3 LICENSE information 2019-03-14 18:25:02 -05:00
Makefile Update test Docker image 2023-07-12 09:19:53 -05:00
README.md Update to shields.io new API 2023-01-23 13:51:06 -06:00
bootstrap Standardize on &> when not appending output 2019-12-04 22:39:00 -06:00
pyproject.toml Move all test/linting configs into pyproject.toml 2023-07-12 09:19:59 -05:00
yadm Changes for new shellcheck compliance 2023-07-12 09:19:59 -05:00
yadm.1 Update version number and update documentation 2023-01-23 13:25:54 -06:00
yadm.md Update version number and update documentation 2023-01-23 13:25:54 -06:00
yadm.spec Update version number and update documentation 2023-01-23 13:25:54 -06:00

README.md

yadm - Yet Another Dotfiles Manager

Latest Version Homebrew Version OBS Version Arch Version License
Master Update Develop Update Website Update
Master Status Develop Status GH Pages Status Dev Pages Status

https://yadm.io/

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.