RCUP(1) | General Commands Manual | RCUP(1) |
rcup
— update and
install dotfiles managed by rcm
rcup |
[-CfhiKkqVv ] [-B
hostname] [-d
dir] [-g ]
[-I excl_pat]
[-S excl_pat]
[-s excl_pat]
[-t tag]
[-U excl_pat]
[-u excl_pat]
[-x excl_pat]
[files ...] |
This is a program to update and install personal dotfiles. These
dotfiles are managed in a separate directory. Use
rcup
to install files from your dotfiles directories
or from host- or tag-specific directories within.
See DIRECTORY LAYOUT for details on the directory layout.
It supports these options:
-B
HOSTNAME-C
-d
DIR-f
-g
stdout
a standalone shell script that
will run the rcup
command as specified. Nothing on
your filesystem will be modified by rcup
when this
flag is passed.-h
-I
EXCL_PAT-x
flag or a setting in
rcrc(5). This can be repeated with additional patterns.
See lsrc(1),
EXCLUDE PATTERN, for more
details.-i
-K
-k
-S
EXCL_PAT-s
EXCL_PAT-S
. This option can be repeated.-t
TAG-U
EXCL_PAT-U
option in lsrc(1) for
more information.-u
EXCL_PAT-U
. This
option can be repeated. This is the default. See the documentation of the
-u
option in lsrc(1) for more
information.-q
-V
-v
stderr
.-x
EXCL_PATAny non-dot non-meta file or directory under your dotfiles directory will be installed as a dotfile. For example, .dotfiles/zshrc will be installed into ~/.zshrc .
Files are installed as symlinks. Directories are installed by
making directories. The -C
flag causes files to be
installed as copies instead of symlinks. The
COPY_ALWAYS option in rcrc(5) can be
used to list files that must only be copied.
Three meta files are supported: host-specific files, tagged files, hooks.
Host-specific files go in a directory named for the host, prefixed with host-. For example, .dotfiles/host-scarlett contains files specific to the computer with hostname scarlett, and these files will only be installed on the computer with hostname scarlett.
Tagged files go in a directory named for the tag, prefixed with
tag-
. Therefore, files under
.dotfiles/tag-git are only installed when installing
using the git
tag.
Hooks go in a directory named hooks. Two
hooks are supported by rcup
: pre-up and post-up.
These go in files or directories with predictable filenames:
.dotfiles/hooks/pre-up and
.dotfiles/hooks/post-up, or
.dotfiles/hooks/pre-up/* and
.dotfiles/hooks/post-up/*. These files must be
executable. They are run every time rcup
is run, and
therefore must be idempotent.
Hooks will be executed one at a time, sorted alphabetically. For instance, hooks/pre-up/animals will run before hooks/pre-up/aquariums, and hooks/pre-up/4-eyes will run before hooks/post-up/2-u-nothing-compares.
It is instructive to understand the process
rcup
uses when synchronizing your rc files:
RCRC
~/.dotfiles ~/.rcrc
rcup
is maintained by
Mike Burns
<mburns@thoughtbot.com>
and thoughtbot
July 28, 2013 | Debian |