My personal dotfile manager, borne out of what I wanted that I wasn't getting (I don't like template files).
where.json
defines where you want your dots to go, per-platform.
{
"neovim": {
"source": "nvim", <-- relative to your dotfile repo's root. folders supported! :D
"windows": "~/AppData/Local/",
"darwin": "~/.config/",
}
}
- similar to Chezmoi, running
dotfarmer apply
will diff the source state and the target state, and apply changed files
- Implement basic feature set
- Read
where.json
- Diff target state
- Apply target state
- Read
- Plan out how to handle per-machine content differences, vs. location differences
- using templates here is probably fine, just try to minimize complexity as much as humanly possible