This repository makes use of one or more Git submodules, so adding the --recursive
flag when cloning is important.
git clone --recursive git@github.com:dsimmons/dotfiles.git
This repository is organized for use with GNU Stow.
Example:
# ~/dotfiles
stow alacritty
stow bash
stow config
stow git
stow gnupg
stow i3
# NOTE: This doesn't work for now -- it needs to be manually copied.
# See: https://github.com/kopia/kopia/issues/2037
# stow kopia
stow nvim
stow redshift
stow X
This automatically creates $HOME
symlinks which mirror the directory structure. It works especially well for bins that have files and/or configuration located at one or more of ~
, XDG_CONFIG_HOME
, or XDG_DATA_HOME
.
See this blog post for a more in-depth explanation.
NOTE: The following instructions assume you're using an Arch-based system.
Install community packages with Pacman:
(--needed
makes it idempotent, skipping packages we already have that haven't changed versions)
sudo pacman -S --needed $(grep -v '^#' packages-community)
Install AUR packages with paru:
(--noprovides
skips the menu that displays alternatives, like binaries vs compilation from source)
sudo paru -S --needed --noprovides $(grep -v '^#' packages-aur)