dotfiles/install.sh

34 lines
1.1 KiB
Bash

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