#!/bin/sh # shellcheck disable=SC1091 # variables LOCAL_GIT_DIR="${HOME}/.local/git" XDG_CACHE_HOME="/tmp/${USER}-cache" XDG_CONFIG_HOME="${HOME}/.config" XDG_DATA_HOME="${HOME}/.local/share" XDG_STATE_HOME="${HOME}/.local/state" # clean + prepare local dirs rm -rf ~/.cache ~/.config/_cache ~/.fdignore ~/.fzf.bash ~/.fzf.zsh ~/.gitconfig ~/.gitignore ~/.history ~/.hushlogin ~/.tmux.conf ~/.vim* ~/.zcomp* ~/.zsh* rm -rf "${XDG_CACHE_HOME}" "${XDG_DATA_HOME}/nvim" "${XDG_STATE_HOME}/nvim" mkdir -p "${XDG_CACHE_HOME}" "${XDG_CONFIG_HOME}" "${XDG_DATA_HOME}" chmod 700 "${XDG_CACHE_HOME}" # prepare repository mkdir -p "${LOCAL_GIT_DIR}" rm -rf "${LOCAL_GIT_DIR}/dotfiles" git clone https://git.insomniac.pl/ftpd/dotfiles "${LOCAL_GIT_DIR}/dotfiles" # zsh modules mkdir -p "${LOCAL_GIT_DIR}/zsh_modules" for module in Aloxaf/fzf-tab mfaerevaag/wd romkatv/powerlevel10k zdharma-continuum/fast-syntax-highlighting; do rm -rf "${LOCAL_GIT_DIR}/zsh_modules/${module#*/}" git clone https://github.com/${module} "${LOCAL_GIT_DIR}/zsh_modules/${module#*/}" done # configs for i in "${LOCAL_GIT_DIR}"/dotfiles/config/*; do rm -rf "${XDG_CONFIG_HOME:?}/$(basename "${i}")" ln -sf "${LOCAL_GIT_DIR}/dotfiles/config/$(basename "${i}")" "${XDG_CONFIG_HOME}/" done # execute post-install script printf "Running post-install script... " . "${LOCAL_GIT_DIR}/dotfiles/scripts/post-install.sh" echo "done."