2014-02-28 23:42:51 +00:00
|
|
|
# Kirsle's Dotfiles
|
|
|
|
|
|
|
|
This repo is for my own personal use for syncing my Unix config files and
|
|
|
|
scripts between my various devices. Feel free to look around and learn from
|
|
|
|
my config scripts.
|
|
|
|
|
|
|
|
# Setup
|
|
|
|
|
|
|
|
```bash
|
|
|
|
~$ git clone git@github.com:kirsle/.dotfiles
|
2017-01-11 21:12:15 +00:00
|
|
|
~$ ./.dotfiles/setup
|
2014-02-28 23:42:51 +00:00
|
|
|
```
|
|
|
|
|
2017-01-11 21:12:15 +00:00
|
|
|
# Dotfiles Manager (dfm)
|
|
|
|
|
|
|
|
The dotfiles repo is managed by a `dfm` command, which gets installed into
|
|
|
|
`~/bin` automatically. (The `.dotfiles/setup` script is just an easy alias
|
|
|
|
to this command).
|
|
|
|
|
|
|
|
See `dfm --help` for documentation. Briefly:
|
|
|
|
|
|
|
|
* `dfm setup` creates symlinks to all the files in `./home` into `$HOME`.
|
|
|
|
* `dfm update` does a `git pull` and installs any new dotfiles.
|
|
|
|
* `dfm check-update` reminds you every 15 days to run `dfm update` (but
|
|
|
|
doesn't remind you more than once per 24 hours).
|
|
|
|
|
|
|
|
In case one of the target files already exists (and is not a symlink), it is
|
|
|
|
copied into `.dotfiles/backup` before being deleted and relinked.
|
|
|
|
|
|
|
|
The commands take optional arguments:
|
|
|
|
|
|
|
|
* `dfm setup --force`: forcefully re-link all dotfiles, deleting any links
|
|
|
|
that already exist.
|
|
|
|
* `dfm setup --copy`: tell it not to use symlinks but instead make normal
|
|
|
|
file copies into `$HOME`.
|
|
|
|
* `dfm check-update --force`: always show the update reminder.
|
|
|
|
|
|
|
|
The `.dotfiles/setup` script passes all options along to `dfm`, so you can
|
|
|
|
do `.dotfiles/setup --copy` for example.
|
|
|
|
|
2014-02-28 23:42:51 +00:00
|
|
|
# Layout
|
|
|
|
|
|
|
|
* `./setup`
|
|
|
|
|
|
|
|
Installation script for the dotfiles. Creates symlinks for everything in
|
|
|
|
`./home` into `$HOME`.
|
|
|
|
|
|
|
|
This will **not** delete existing files, such as `~/.bashrc`. Use the
|
|
|
|
`--install` option to make it do so.
|
|
|
|
|
|
|
|
* `./home`
|
|
|
|
|
|
|
|
Everything in this folder will be symlinked to from your `$HOME` folder.
|