- Document xstow usage for systems lacking GNU Stow - Add SPDX headers to .stowrc for license compliance - Add REUSE specification compliance notes to README
Dotfiles
Use GNU Stow (or xstow) to slow down your home directory listings with my accumulated sludge.
Setup
-
Create the
~/.localdirectory (if it doesn't already exist)mkdir -p ~/.local -
Clone the repository
git clone https://git.krislamo.org/kris/dotfiles.git ~/.local/dotfiles -
Navigate to the repository's directory
cd ~/.local/dotfiles -
Dry run
stowwith-nagainst configuration sets and verify, e.g.,stow -n vim
Using xstow
On systems without GNU Stow, you can build and use xstow as an alternative for
managing symlinks. Build a statically linked binary using
xstow-builder, then copy it to
~/.local/bin/ on your target system. You need to specify the target directory
-t because xstow does not use the .stowrc file.
Bootstrapping
If you copy xstow to ~/.local/bin before stowing the bash package, you'll
hit a bootstrapping problem. You need xstow in your $PATH to easily use it,
but you need the updated .bashrc (from the bash package) to add
~/.local/bin to your $PATH in the first place. To break this cycle, invoke
xstow directly with its full path for the initial setup.
-
Place the
xstowbinary at~/.local/bin/xstow -
Sideline your
.bashrcfilecp ~/.bashrc ~/.bashrc.bak -
Inside the repository, dry run
xstow(-n) using the full path~/.local/bin/xstow -t "$HOME" -v 2 -n bash- Remove
-nonly once you are sure it will work as intended - After stowing the
bashpackage, start a new shell or source.bashrc
- Remove
Licensing
This project follows the REUSE specification.
Efforts have been made to include SPDX license headers and a LICENSES directory with the appropriate licenses, since not all configurations in these dotfiles are original.
Please ensure that the repository passes the reuse lint check.