]> git.rmz.io Git - dotfiles.git/blob - Makefile
add .config support
[dotfiles.git] / Makefile
1 APATH := $(realpath .)
2 RPATH := $(subst $(wildcard ~/),,$(APATH))
3
4 FILES := bin
5 DOTFILES := aliases bash* conky* flexget git* vim* xbindkeysrc Xmodmap zsh*
6 CONFIGFILES := retroarch
7
8 .PHONY: install $(FILES) $(DOTFILES) $(CONFIGFILES)
9 install: $(FILES) $(DOTFILES) $(CONFIGFILES)
10
11 $(FILES):
12 @if [[ -e ~/$@ && ! -L ~/$@ ]]; then \
13 if [[ -d $@ ]]; then \
14 cp -r ~/$@/* $@; \
15 else \
16 cp -r ~/$@ $@; \
17 fi; \
18 rm -r ~/$@; \
19 fi;
20 ln -sfT $(RPATH)/$@ ~/$@
21
22 $(DOTFILES):
23 @if [[ -e ~/.$@ && ! -L ~/.$@ ]]; then \
24 if [[ -d .$@ ]]; then \
25 cp -r ~/.$@/* $@; \
26 else \
27 cp -r ~/.$@ $@; \
28 fi; \
29 rm -r ~/.$@; \
30 fi;
31 ln -sfT $(RPATH)/$@ ~/.$@
32
33 $(CONFIGFILES):
34 @if [[ -e ~/.config/$@ && ! -L ~/.config/$@ ]]; then \
35 if [[ -d .config/$@ ]]; then \
36 cp -r ~/.config/$@/* $@; \
37 else \
38 cp -r ~/.config/$@ $@; \
39 fi; \
40 rm -r ~/.config/$@; \
41 fi;
42 ln -sfT $(RPATH)/$@ ~/.config/$@