blob: 70861a672c7beb89bd9d7add0476786ba30cc76a (
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
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
|
.POSIX:
DWM = dwm-farajli-6.5
ST = st-farajli-0.9.2
DMENU = dmenu-farajli-5.3
SLSTATUS = slstatus-farajli-1.0
FONT1 = LiberationMono
FONT2 = JetBrainsMono
SOFTWARE = $(DWM) $(DMENU) $(SLSTATUS) $(ST)
FONTS = $(FONT1) $(FONT2)
ARCHIVE = $(SOFTWARE:=.tar.gz) $(FONTS:=.tar.gz)
CONFDIR = $(HOME)/.config
MUSICDIR = $(HOME)/music
PROJDIR = $(HOME)/proj
BOOKDIR = $(HOME)/tproj
TESTPROJDIR = $(HOME)/tproj
BINDIR = $(HOME)/.local/bin
FONTDIR = $(HOME)/.local/share/fonts/
BASHPROFILE = $(HOME)/.bash_profile
BASHRC = $(HOME)/.bashrc
GITCONFIG = $(HOME)/.gitconfig
ZCACHE = $(HOME)/.cache/zsh/history
ZPROFILE = $(HOME)/.zprofile
ZSHRC = $(HOME)/.zshrc
COPY = cp -r
LINK = ln -sf
all: config scripts directory
full: config scripts directory desktop
desktop: dmenu-install dwm-install slstatus-install st-install font1-install font2-install check
config:
mkdir -p $(CONFDIR)/sites
$(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/nvim $(CONFDIR)
$(COPY) config/x11 $(CONFDIR)
$(COPY) config/zathura $(CONFDIR)
$(COPY) config/mimeapps.list $(CONFDIR)
$(COPY) config/sites/bookmarks.txt $(CONFDIR)/sites
$(LINK) $(CONFDIR)/shell/profile $(BASHPROFILE)
$(LINK) $(CONFDIR)/shell/profile $(ZPROFILE)
mkdir -p $$(dirname $(ZCACHE))
touch $(ZCACHE)
git:
sed '/# signingkey = <to be set manually>/d' config/git/gitconfig > $(GITCONFIG)
@echo "#####################################################################"
@echo "Warning: Git commit/tag signing is enabled but signingKey is not set." >&2
@echo "#####################################################################"
@echo "Configure it manually using:" >&2
@echo " gpg --list-secret-keys --keyid-format=long" >&2
@echo " git config --global user.signingkey <YOUR_KEY_ID>" >&2
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)
$(COPY) scripts/noc
arch-linux:
sudo $(COPY) distros/arch-linux/pacman.conf /etc
directory:
mkdir -p \
$(BINDIR) \
$(BOOKDIR) \
$(CONFDIR) \
$(MUSICDIR) \
$(PROJDIR) \
$(TESTPROJDIR)
sync: $(ARCHIVE)
$(ARCHIVE):
curl -LO https://farajli.net/archive/$@
dmenu-install: $(DMENU).tar.gz
dwm-install: $(DWM).tar.gz
slstatus-install: $(SLSTATUS).tar.gz
st-install: $(ST).tar.gz
font1-install: $(FONT1).tar.gz
font2-install: $(FONT2).tar.gz
dmenu-install dwm-install slstatus-install st-install:
tar xf $<
PREFIX=~/.local make -C $$(basename $< .tar.gz) install
font1-install font2-install:
tar xf $<
$(COPY) $$(basename $< .tar.gz) $(FONTDIR)
check:
@./dep.sh
fullcheck:
@./dep.sh --optional
dist: clean
mkdir -p slcf/
cp -R config distros scripts dep.sh Makefile README slcf/
tar -czf slcf.tar.gz slcf/
rm -rf slcf/
clean:
rm -rf slcf/ slcf.tar.gz $(ARCHIVE) $(FONTS) $(SOFTWARE)
.PHONY: all arch-linux check clean config desktop directory dist \
dmenu-install dwm-install font1-install font2-install fonts \
full fullcheck git scripts server slstatus-install st-install sync
|