Repository navigation
Expand file tree
/
Copy pathMakefile
More file actions
132 lines (111 loc) · 3.91 KB
/
Copy pathMakefile
File metadata and controls
132 lines (111 loc) · 3.91 KB
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
131
132
# Variables
VIM_SETUP_GIT = git clone https://github.com/gagbo/vim.git
EMACS_SETUP_GIT = git clone https://github.com/gagbo/doom-emacs.git
# Default target
all: editors plasma lxqt i3blocks i3status i3 sway rofi redshift kvantum \
openbox tint2 polybar kitty ctags zsh bash Xresources weechat tern tmux \
IdeaVim urxvt latte conky hack-fonts weather-icons git mpd ncmpcpp scripts
# Editors setup
editors: vim emacs
vim:
@mkdir -p nvim/.config
@echo "********** Vim/Neovim setup **********"
@git submodule init nvim/.config/nvim && \
git submodule update nvim/.config/nvim --recursive && \
stow -S nvim -t ${HOME} || echo "Skipping stow..."
@echo "Now run: nvim -c PackUpdate (and do the same in Vim) to install plugins"
@echo ""
emacs:
@mkdir -p emacs
@echo "************* Emacs setup *************"
@git submodule init emacs/.emacs.d && \
git submodule update emacs/.emacs.d && \
stow -S emacs -t ${HOME} || echo "Skipping stow..."
@echo "Start Emacs so packages can be updated"
@echo ""
# Desktop environment / WM configs
plasma:
@echo "************ plasma setup ************"
@mkdir -p ${HOME}/.local/share/icons/hicolor
@if [ -d plasma/.git ]; then \
git submodule init plasma && \
git submodule update plasma --recursive; \
else \
echo "Skipping git submodule (plasma not a submodule)"; \
fi
@stow -S plasma -t ${HOME} 2>/dev/null || echo "Skipping stow (plasma may not have a valid stow structure)"
@echo ""
lxqt: openbox
@echo "************* lxqt setup *************"
mkdir -p ${HOME}/.config
stow -S lxqt -t ${HOME} || echo "Skipping stow..."
@echo ""
i3blocks:
@echo "*********** i3blocks setup ***********"
mkdir -p ${HOME}/.config
stow -S i3blocks -t ${HOME} || echo "Skipping stow..."
@echo ""
i3status:
@echo "*********** i3status setup ***********"
mkdir -p ${HOME}/.config
stow -S i3status -t ${HOME} || echo "Skipping stow..."
@echo ""
i3: i3blocks i3status polybar rofi
@echo "************** i3 setup **************"
mkdir -p ${HOME}/.config
stow -S i3 -t ${HOME} || echo "Skipping stow..."
@echo ""
sway: i3status rofi
@echo "************* sway setup *************"
mkdir -p ${HOME}/.config
stow -S sway -t ${HOME} || echo "Skipping stow..."
@echo ""
rofi:
@echo "************* rofi setup *************"
mkdir -p ${HOME}/.config
stow -S rofi -t ${HOME} || echo "Skipping stow..."
@echo ""
redshift:
@echo "*********** redshift setup ***********"
mkdir -p ${HOME}/.config
stow -S redshift -t ${HOME} || echo "Skipping stow..."
@echo ""
kvantum:
@echo "************ kvantum setup ************"
@mkdir -p ${HOME}/.config
@if [ -d kvantum/.git ]; then \
git submodule init kvantum && \
git submodule update kvantum --recursive; \
else \
echo "Skipping git submodule (kvantum not a submodule)"; \
fi
@stow -S kvantum -t ${HOME} 2>/dev/null || echo "Skipping stow (kvantum may not have a valid stow structure)"
@echo ""
openbox: tint2
@echo "************ openbox setup ************"
mkdir -p ${HOME}/.config
stow -S openbox -t ${HOME} || echo "Skipping stow..."
@echo ""
tint2:
@echo "************ tint2 setup ************"
mkdir -p ${HOME}/.config
stow -S tint2 -t ${HOME} || echo "Skipping stow..."
@echo ""
polybar:
@echo "*********** polybar setup ***********"
mkdir -p ${HOME}/.config
stow -S polybar -t ${HOME} || echo "Skipping stow..."
@echo ""
kitty:
@echo "************ kitty setup ************"
mkdir -p ${HOME}/.config
stow -S kitty -t ${HOME} || echo "Skipping stow..."
@echo ""
# More targets follow similar pattern...
# (ctags, zsh, bash, Xresources, weechat, tern, tmux, IdeaVim, urxvt, latte,
# conky, hack-fonts, weather-icons, git, mpd, ncmpcpp, scripts)
# Mark all phony targets
.PHONY: all editors vim emacs plasma lxqt i3blocks i3status i3 sway rofi \
redshift kvantum openbox tint2 polybar kitty ctags zsh bash \
Xresources weechat tern tmux IdeaVim urxvt latte conky hack-fonts \
weather-icons git mpd ncmpcpp scripts