Fix some logic in the Makefile

This commit is contained in:
Evie Litherland-Smith 2023-05-16 10:24:39 +01:00
parent be64870d72
commit 7a6839c074

View file

@ -1,16 +1,28 @@
CONFIG_DIR := $(if $(XDG_CONFIG_HOME), $(XDG_CONFIG_HOME), $(HOME)/.config)
BIN_DIR := $(HOME)/.local/bin
FONTS_DIR := $(HOME)/.fonts
.PHONY: default clean
.PHONY: default clean nvim direnv firacode
default: $(CONFIG_DIR) $(BIN_DIR)
fc-list | grep -iE "(fira.*code)*(nerd.*font)" > /dev/null || ./installers/firacode.sh && fc-cache
command -v nvim > /dev/null || ./installers/nvim.sh
command -v direnv > /dev/null || bin_path="$(BIN_DIR)" ./installers/direnv.sh
default:
command -v nvim > /dev/null || make nvim
command -v direnv > /dev/null || make direnv
fc-list | grep -iE "(fira.*code)*(nerd.*font)" > /dev/null || make firacode
clean:
[ -e $(HOME)/.fonts/FiraCode ] && rm -rf $(HOME)/.fonts/FiraCode
[ -e $(HOME)/.local/share/nvim ] && rm -rf $(HOME)/.local/share/nvim
[ -e $(HOME)/.local/state/nvim ] && rm -rf $(HOME)/.local/state/nvim
[ -e $(BIN_DIR)/nvim ] && rm $(BIN_DIR)/nvim
[ -e $(BIN_DIR)/direnv ] && rm $(BIN_DIR)/direnv
rm -rf $(HOME)/.local/share/nvim || continue
rm -rf $(HOME)/.local/state/nvim || continue
rm $(BIN_DIR)/nvim || continue
rm $(BIN_DIR)/direnv || continue
rm -rf $(FONTS_DIR)/FiraCode || continue
nvim: $(BIN_DIR)
./installers/nvim.sh
direnv: $(BIN_DIR)
bin_path="$(BIN_DIR)" ./installers/direnv.sh
firacode: $(FONTS_DIR)
./installers/firacode.sh && fc-cache
$(BIN_DIR) $(FONTS_DIR):
mkdir -p $@