Yet Another Dotfiles Manager. My personal favorite tool for this task.
Go to file
Erik Flodin 64fe9ec4bb
Replace ubuntu 20.04 with 22.04
as the 20.04 runner is deprecated and will be removed 2025-04-01.
2025-03-18 20:05:17 +01:00
.github Replace ubuntu 20.04 with 22.04 2025-03-18 20:05:17 +01:00
completion Fix handling of filenames with space in bash completion (#341) 2025-03-03 21:36:36 +01:00
contrib Call bootstrap scripts with a tty 2024-11-24 20:18:22 +01:00
test Add yadm.filename variable to default template processor 2025-03-03 23:47:16 +01: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 Ignore __pycache__/ 2024-12-10 21:28:51 +01:00
bootstrap Format yadm and bootstrap with shfmt 2024-12-11 20:07:38 +01:00
CHANGES Update CHANGES and prepare for 3.5.0 2025-03-04 00:03:44 +01:00
CONTRIBUTORS Update CHANGES and prepare for 3.5.0 2025-03-04 00:03:44 +01:00
LICENSE Update GPLv3 LICENSE information 2019-03-14 18:25:02 -05:00
Makefile Fix handling of filenames with space in bash completion (#341) 2025-03-03 21:36:36 +01:00
pyproject.toml Update testbed docker image 2024-11-11 22:30:41 +01:00
README.md Update CHANGES and prepare for 3.5.0 2025-03-04 00:03:44 +01:00
yadm Update CHANGES and prepare for 3.5.0 2025-03-04 00:03:44 +01:00
yadm.1 Update CHANGES and prepare for 3.5.0 2025-03-04 00:03:44 +01:00
yadm.md Update CHANGES and prepare for 3.5.0 2025-03-04 00:03:44 +01:00
yadm.spec Update CHANGES and prepare for 3.5.0 2025-03-04 00:03:44 +01:00

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.

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.