summaryrefslogtreecommitdiff
path: root/Makefile
blob: d81682275f5bb8ff26ce404fcca3cca91a573e35 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
# Directories
CONFDIR=$(HOME)/.config
MUSICDIR=$(HOME)/music
PROJDIR=$(HOME)/proj
BOOKDIR=$(HOME)/tproj
TESTPROJDIR=$(HOME)/tproj
BINDIR=$(HOME)/.local/bin

# Files
BASHRC=$(HOME)/.bashrc
ZSHRC=$(HOME)/.zshrc
ZPROFILE=$(HOME)/.zprofile
BASHPROFILE=$(HOME)/.bash_profile
GITCONFIG=$(HOME)/.gitconfig

COPY=cp -r
LINK=ln -sf

all:

full: config scripts git desktop directory

config:
	mkdir -p $(CONFDIR)
	$(COPY) config/bash/bashrc		$(BASHRC)
	$(COPY) config/zsh/zshrc		$(ZSHRC)
	$(COPY) config/lf 			$(CONFDIR)
	$(COPY) config/mpv 			$(CONFDIR)
	$(COPY) config/sxiv 			$(CONFDIR)
	$(COPY) config/nsxiv 			$(CONFDIR)
	$(COPY) config/picom 			$(CONFDIR)
	$(COPY) config/qutebrowser 		$(CONFDIR)
	$(COPY) config/shell 			$(CONFDIR)
	$(COPY) config/vim			$(CONFDIR)
	$(COPY) config/x11 			$(CONFDIR)
	$(COPY) config/zathura 			$(CONFDIR)
	$(COPY) config/mimeapps.list 		$(CONFDIR)
	$(COPY) config/sites/bookmarks.txt 	$(CONFDIR)
	$(LINK) $(CONFDIR)/shell/profile	$(BASHPROFILE)
	$(LINK) $(CONFDIR)/shell/profile	$(ZPROFILE)

desktop: dwm st dmenu slstatus

git:
	$(COPY) config/git/gitconfig 		$(GITCONFIG)


scripts:
	mkdir -p $(BINDIR)
	$(COPY) scripts/* 			$(BINDIR)

server:
	$(COPY) config/bash/bashrc 	$(BASHRC)
	$(COPY) config/zsh/zshrc 	$(ZSHRC)
	$(COPY) config/lf 		$(CONFDIR)
	$(COPY) config/shell		$(CONFDIR)
	$(COPY) config/vim		$(CONFDIR)

dwm: clean
	curl -LO https://farajli.net/dwm.tar.gz
	tar xf dwm.tar.gz
	cd dwm/; PREFIX="${HOME}"/.local make install

st: clean
	curl -LO https://farajli.net/st.tar.gz
	tar xf st.tar.gz
	cd st/; PREFIX="${HOME}"/.local make install

dmenu: clean
	curl -LO https://farajli.net/dmenu.tar.gz
	tar xf dmenu.tar.gz
	cd dmenu/; PREFIX="${HOME}"/.local make install

slstatus: clean
	curl -LO https://farajli.net/slstatus.tar.gz
	tar xf slstatus.tar.gz
	cd slstatus/; PREFIX="${HOME}"/.local make install

arch-linux:
	sudo $(COPY) distros/arch-linux/pacman.conf /etc

directory:
	mkdir -p 	$(CONFDIR) \
			$(MUSICDIR) \
			$(PROJDIR) \
			$(BOOKDIR) \
			$(TESTPROJDIR) \
			$(BINDIR)

depcheck: 
	@./dep.sh

clean:
	rm -rf dwm st dmenu dwm.tar.gz st.tar.gz dmenu.tar.gz slstatus slstatus.tar.gz

.PHONY: all config scripts server desktop arch-linux directory dwm st dmenu slstatus clean full depcheck