52 lines
1.6 KiB
Bash
52 lines
1.6 KiB
Bash
#!/bin/sh
|
|
|
|
# clean + prepare local dirs
|
|
rm -rf ~/.cache ~/.config/_cache /tmp/${USER}-cache
|
|
rm -rf ~/.fdignore ~/.fzf.bash ~/.fzf.zsh ~/.gitconfig ~/.gitignore ~/.history ~/.tmux.conf ~/.vim* ~/.zcomp* ~/.zsh*
|
|
mkdir -p /tmp/${USER}-cache/ ~/.config ~/.local/bin ~/.local/share
|
|
chmod 700 /tmp/${USER}-cache
|
|
|
|
# prepare global variables
|
|
echo "skip_global_compinit=1" > $HOME/.zshenv
|
|
case $(uname -s) in
|
|
Darwin) echo "export XDG_CACHE_HOME=$HOME/Library/Caches" >> $HOME/.zshenv;;
|
|
Linux) echo 'export XDG_CACHE_HOME=/tmp/${USER}-cache' >> $HOME/.zshenv;;
|
|
esac
|
|
echo "export XDG_CONFIG_HOME=$HOME/.config" >> $HOME/.zshenv
|
|
echo "export XDG_DATA_HOME=$HOME/.local/share" >> $HOME/.zshenv
|
|
echo "export ZDOTDIR=$HOME/.config/zsh" >> $HOME/.zshenv
|
|
. $HOME/.zshenv
|
|
|
|
# prepare repository
|
|
mkdir -p $XDG_DATA_HOME/repos
|
|
rm -rf $XDG_DATA_HOME/repos/dotfiles
|
|
git clone --recurse https://git.insomniac.pl/ftpd/dotfiles $XDG_DATA_HOME/repos/dotfiles
|
|
|
|
|
|
## htop
|
|
rm -rf ~/.config/htop
|
|
ln -sf $XDG_DATA_HOME/repos/dotfiles/htop ~/.config/
|
|
|
|
## fdignore
|
|
rm -rf ~/.config/fd
|
|
ln -sf $XDG_DATA_HOME/repos/dotfiles/fd ~/.config/
|
|
|
|
## tmux
|
|
rm -rf ~/.config/tmux
|
|
ln -sf $XDG_DATA_HOME/repos/dotfiles/tmux ~/.config/
|
|
|
|
## vim
|
|
rm -rf ~/.config/nvim
|
|
ln -sf $XDG_DATA_HOME/repos/dotfiles/nvim ~/.config/
|
|
|
|
## zsh
|
|
### modules
|
|
mkdir -p $XDG_DATA_HOME/repos/zsh_modules
|
|
rm -rf $XDG_DATA_HOME/repos/zsh_modules/*
|
|
for module in mfaerevaag/wd romkatv/powerlevel10k zdharma-continuum/fast-syntax-highlighting; do
|
|
git clone https://github.com/${module} $XDG_DATA_HOME/repos/zsh_modules/${module#*/}
|
|
done
|
|
### config
|
|
rm -rf ~/.config/zsh
|
|
ln -sf $XDG_DATA_HOME/repos/dotfiles/zsh ~/.config/
|