From 75b37015ad129578979bcdf527998851242658de Mon Sep 17 00:00:00 2001 From: Bartek Stalewski Date: Wed, 30 Mar 2022 11:07:33 +0200 Subject: [PATCH] New approach to dotfiles handling. --- install.sh | 73 ++++++++++++++++++++++++++++-------------------------- 1 file changed, 38 insertions(+), 35 deletions(-) diff --git a/install.sh b/install.sh index ee81662..f2184db 100644 --- a/install.sh +++ b/install.sh @@ -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