X-Git-Url: https://git.rmz.io/dotfiles.git/blobdiff_plain/97997c722219be6a91f42bf7ed7882c4aa8f6b0c..d3bdd28f491728d969c5941d18b9f4ee2651f60b:/Makefile diff --git a/Makefile b/Makefile index 1e63778..0344649 100644 --- a/Makefile +++ b/Makefile @@ -1,20 +1,41 @@ APATH := $(realpath .) -RPATH := $(subst $(wildcard ~/),,$(APATH)) -EXCLUDES := Makefile -ALL := $(wildcard *) -FILES := $(filter-out $(EXCLUDES),$(ALL)) +FILES := bin +DOTFILES := conky* git* goobookrc msmtp* mutt ncmpcpp profile weechat xbindkeysrc Xresources xprofile zprofile zshrc +CONFIGFILES := aliases compton.conf git mimeo.conf mpd offlineimap ranger retroarch vim xkb zsh +.PHONY: install $(FILES) $(DOTFILES) $(CONFIGFILES) +install: $(FILES) $(DOTFILES) $(CONFIGFILES) -test: - echo $(APATH) - echo $(FILES); - echo $(RPATH) +$(FILES): + @if [[ -e ~/$@ && ! -L ~/$@ ]]; then \ + if [[ -d $@ ]]; then \ + cp -r ~/$@/* $@; \ + else \ + cp -r ~/$@ $@; \ + fi; \ + rm -r ~/$@; \ + fi; + ln -sfT $(APATH)/$@ ~/$@ -.PHONY: install $(FILES) -install: $(FILES) +$(DOTFILES): + @if [[ -e ~/.$@ && ! -L ~/.$@ ]]; then \ + if [[ -d .$@ ]]; then \ + cp -r ~/.$@/* $@; \ + else \ + cp -r ~/.$@ $@; \ + fi; \ + rm -r ~/.$@; \ + fi; + ln -sfT $(APATH)/$@ ~/.$@ -$(FILES): - cp -r ~/.$@ $@ - rm -r ~/.$@ - ln -sf $(RPATH)/$@ ~/.$@ +$(CONFIGFILES): + @if [[ -e ~/.config/$@ && ! -L ~/.config/$@ ]]; then \ + if [[ -d .config/$@ ]]; then \ + cp -r ~/.config/$@/* $@; \ + else \ + cp -r ~/.config/$@ $@; \ + fi; \ + rm -r ~/.config/$@; \ + fi; + ln -sfT $(APATH)/$@ ~/.config/$@