New approach to dotfiles handling.

This commit is contained in:
Bartek Stalewski 2022-03-30 11:07:33 +02:00
parent 98a0c67a9e
commit 75b37015ad

View File

@ -1,39 +1,6 @@
#!/bin/sh
# prepare repository
mkdir -p ~/.local/repos
rm -rf ~/.local/repos/dotfiles
git clone --recurse https://git.insomniac.pl/ftpd/dotfiles ~/.local/repos/dotfiles
# clean + prepare local dirs
rm -rf ~/.cache ~/.config/_cache ~/.config/vim ~/.config/zsh
rm -rf ~/.fdignore ~/.fzf.bash ~/.fzf.zsh ~/.gitconfig ~/.gitignore ~/.history ~/.tmux.conf ~/.vim* ~/.zcomp* ~/.zsh*
mkdir -p ~/.cache/ ~/.config ~/.local/bin ~/.local/settings
## neovim
rm -rf ~/.config/vim
ln -sf ~/.local/repos/dotfiles/vim ~/.config/
touch ~/.local/settings/vimrc
## fdignore
rm -rf ~/.config/fd
ln -sf ~/.local/repos/dotfiles/fd ~/.config/
touch ~/.local/settings/fd
## tmux
rm -rf ~/.config/tmux
ln -sf ~/.local/repos/dotfiles/tmux ~/.config/
## htop
rm -rf ~/.config/htop
ln -sf ~/.local/repos/dotfiles/htop ~/.config/
## scripts
for i in ~/.local/repos/dotfiles/_scripts/*; do
ln -sf $i ~/.local/bin/
done
## zsh
# prepare global variables
echo "skip_global_compinit=1" > $HOME/.zshenv
echo "export XDG_DATA_HOME=$HOME/.local/share" >> $HOME/.zshenv
case $(uname -s) in
@ -42,6 +9,42 @@ case $(uname -s) in
esac
echo "export XDG_CONFIG_HOME=$HOME/.config" >> $HOME/.zshenv
echo "export ZDOTDIR=$HOME/.config/zsh" >> $HOME/.zshenv
source $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
# clean + prepare local dirs
rm -rf ~/.cache ~/.config/_cache ~/.config/vim ~/.config/zsh
rm -rf ~/.fdignore ~/.fzf.bash ~/.fzf.zsh ~/.gitconfig ~/.gitignore ~/.history ~/.tmux.conf ~/.vim* ~/.zcomp* ~/.zsh*
mkdir -p ~/.cache/ ~/.config ~/.local/bin ~/.local/settings
## neovim
rm -rf ~/.config/vim
ln -sf $XDG_DATA_HOME/repos/dotfiles/vim ~/.config/
touch ~/.local/settings/vimrc
## fdignore
rm -rf ~/.config/fd
ln -sf $XDG_DATA_HOME/repos/dotfiles/fd ~/.config/
touch ~/.local/settings/fd
## tmux
rm -rf ~/.config/tmux
ln -sf $XDG_DATA_HOME/repos/dotfiles/tmux ~/.config/
## htop
rm -rf ~/.config/htop
ln -sf $XDG_DATA_HOME/repos/dotfiles/htop ~/.config/
## scripts
for i in ~$XDG_DATA_HOME/repos/dotfiles/_scripts/*; do
ln -sf $i ~/.local/bin/
done
## zsh
rm -rf ~/.config/zsh
ln -sf ~/.local/repos/dotfiles/zsh ~/.config/
ln -sf $XDG_DATA_HOME/repos/dotfiles/zsh ~/.config/
touch ~/.local/settings/zsh