This is my personal repository of Unix configuration files or dotfiles, designed to be checked out under a home directory and installed as symbolic links.
Every direct subdirectory of this repository identifies a topic or package of paths to be installed relative to the root of the target home directory. All or only some packages may be installed, as needed.
This layout can be used and managed by multiple tools.
A quick and dirty way to install the links is using the cp
command's
--symbolic-link
feature. For example, as a bash
script:
#!/bin/bash -e shopt -s dotglob cd "$(dirname "$0")" cp -rsi "$PWD"/*/* -t "$HOME"
(Note that bash
requires the dotglob
option to match dotfiles. Without
it, only non-dotfiles will get installed.)
See:
- GNU Stow
- "Using GNU Stow to manage your dotfiles" (Brandon Invergo, 2013-04-04)
Stow works best if the repository is checked out to a direct subdirectory of
target home directory, like ~/pjdelport-dotfiles
.
To install links for all packages:
stow --no-folding -v */ -n
To remove installed links:
stow --no-folding -v -D */ -n
See:
- bash-rc-dir
- See
.bashrc.d/README.rst
for a snippet to add to your.bashrc
. - ssh-config-dir
- See
.ssh/README.rst
, and run~/.ssh/config-update.sh
. - hg-common
- See
~/.hgrc.common
, and include it from~/.hgrc
. - git-common
- See
~/.gitconfig.common
, and include it from~/.gitconfig
.