-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathMakefile
49 lines (40 loc) · 1.45 KB
/
Makefile
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
UNAME_S := $(shell uname -s)
DOTFILE_PATH := $(shell pwd)
FILES_IN_GIT := $(patsubst home/%,$(HOME)/%,$(filter home/%,$(shell git ls-files)))
define windows_to_wsl
$(shell echo "$(1)" | sed 's@\\@/@g' | sed 's@C:/@/mnt/c/@g')
endef
DOTFILES := $(FILES_IN_GIT)
ifeq ($(UNAME_S),Darwin)
DOTFILES += $(HOME)/Library/Developer/Xcode/UserData/FontAndColorThemes/Dracula.xccolortheme
DOTFILES += $(HOME)/.atom/installed-packages.txt
else ifneq ($(shell grep Microsoft /proc/version),)
USERNAME := $(shell cmd.exe /c "echo %USERNAME%")
LOCALAPPDATA := /mnt/c/Users/$(USERNAME)/AppData/Local
DOTFILES += $(HOME)/.minttyrc
DOTFILES += $(LOCALAPPDATA)/wsltty/home/$(USERNAME)/.minttyrc
else
DOTFILES += $(HOME)/.atom/installed-packages.txt
endif
all: $(DOTFILES)
$(HOME)/.atom/installed-packages.txt: $(DOTFILE_PATH)/src/atom-packages.txt
apm install --packages-file $(DOTFILE_PATH)/src/atom-packages.txt
@mkdir -p $(@D)
@rm -rf $@
@touch $(HOME)/.atom/installed-packages.txt
$(HOME)/.minttyrc: $(DOTFILE_PATH)/src/mintty/dracula.minttyrc $(DOTFILE_PATH)/home/.minttyrc
@mkdir -p $(@D)
@rm -rf $@
cat $^ > $@
$(HOME)/Library/Developer/Xcode/UserData/FontAndColorThemes/Dracula.xccolortheme: $(DOTFILE_PATH)/src/xcode/Dracula.xccolortheme
@mkdir -p $(@D)
@rm -rf $@
ln -s $< $@
$(HOME)/%: $(DOTFILE_PATH)/home/%
@mkdir -p $(@D)
@rm -rf $@
ln -s $< $@
$(LOCALAPPDATA)/wsltty/home/$(USERNAME)/.minttyrc: $(HOME)/.minttyrc
@mkdir -p $(@D)
@rm -rf $@
cp $< $@