X-Git-Url: https://git.rmz.io/dotfiles.git/blobdiff_plain/352fe1c31a12484e932c323b44f05070c6076705..698483f78280d2b5d5af36b1b82987d5b7b11f9e:/Makefile diff --git a/Makefile b/Makefile index af701e0..3de276e 100644 --- a/Makefile +++ b/Makefile @@ -1,17 +1,30 @@ -.PHONY: install update +APATH := $(realpath .) +RPATH := $(subst $(wildcard ~/),,$(APATH)) -install: - cp -f bashrc ~/.bashrc - cp -f bash_aliases ~/.bash_aliases - cp -f bash_colors ~/.bash_colors - cp -f bash_logout ~/.bash_logout - cp -f flexget/config.yml ~/.flexget/config.yml - cp -f vimrc ~/.vimrc +FILES := bin +DOTFILES := aliasesrc bash* conky* flexget vim* zsh* -update: - cp -f ~/.bashrc bashrc - cp -f ~/.bash_aliases bash_aliases - cp -f ~/.bash_colors bash_colors - cp -f ~/.bash_logout bash_logout - cp -f ~/.flexget/config.yml flexget/config.yml - cp -f ~/.vimrc vimrc +.PHONY: install $(FILES) $(DOTFILES) +install: $(FILES) $(DOTFILES) + +$(FILES): + @if [[ -e ~/$@ && ! -L ~/$@ ]]; then \ + if [[ -d $@ ]]; then \ + cp -r ~/$@/* $@; \ + else \ + cp -r ~/$@ $@; \ + fi; \ + rm -r ~/$@; \ + fi; + ln -sfT $(RPATH)/$@ ~/$@ + +$(DOTFILES): + @if [[ -e ~/.$@ && ! -L ~/.$@ ]]; then \ + if [[ -d .$@ ]]; then \ + cp -r ~/.$@/* $@; \ + else \ + cp -r ~/.$@ $@; \ + fi; \ + rm -r ~/.$@; \ + fi; + ln -sfT $(RPATH)/$@ ~/.$@