.dotfiles/README.md

29 lines
1.2 KiB
Markdown

# `${HOME}/.dotfiles`
Version control for dotfiles and templates.
## Purpose
`${HOME}/.config` and `${HOME}` are a nightmare to version control. Maintaining a distinct dotfile directory then linking to those files is a much more sane way to cordon them off from the rest of the mess.
## Usage
Make changes and maintain dotfiles in this directory.
TODO: Everything below
Define symlinks or dumper within the `.links` file.
Run `${HOME}/scripts/update_configs.pl` to refresh links and dump templates.
## Details
### `.links`
This file contains a JSON hash of the configuration files available with either a path to be linked, or the name of a dumper contained within [`${HOME}/scripts/dotfiles`](https://git.john.me.tz/jpm/scripts).
### `${HOME}/.spool/dotfiles.json`
This file contains a JSON hash of timestamps at which each configuration was last linked or dumped. The `${HOME}/scripts/update_configs.pl` script will use these times to know whether or not they need to be updated. It will do so if:
* it is a linked configuration file and the `.links` file has been updated since it was last linked.
* it is a dumpable template and the template has been updated since the last logged event.