nvim/Makefile

40 lines
1.2 KiB
Makefile

BIN_DIR := $(HOME)/.local/bin
FONTS_DIR := $(HOME)/.fonts
.PHONY: default clean nvim
default: $(HOME)/.cspell.json
command -v nvim > /dev/null || make nvim
$(HOME)/.cspell.json:
-ln -s $$(readlink -f .cspell.json) $@
clean:
-rm -rf $(HOME)/.local/share/nvim
-rm -rf $(HOME)/.local/state/nvim
-rm -rf $(HOME)/.cache/nvim
-rm $(BIN_DIR)/nvim
-rm -rf $(FONTS_DIR)/FiraCode
-rm $(HOME)/.cspell.json
nvim: $(BIN_DIR)/nvim $(HOME)/.cspell.json $(FONTS_DIR)/FiraCode
$(BIN_DIR)/nvim:
curl -sSLO https://github.com/neovim/neovim/releases/download/stable/nvim.appimage
curl -sSLO https://github.com/neovim/neovim/releases/download/stable/nvim.appimage.sha256sum
sha256sum -c nvim.appimage.sha256sum || rm nvim.appimage nvim.appimage.sha256sum
sha256sum -c nvim.appimage.sha256sum || exit 1
rm nvim.appimage.sha256sum
chmod a+x nvim.appimage
mv nvim.appimage $(BIN_DIR)/nvim
$(FONTS_DIR)/FiraCode:
fc-list | grep -iE "(fira.*code)*(nerd.*font)" > /dev/null && exit 0
mkdir -p $(FONTS_DIR) && cd $(FONTS_DIR)
curl -sSLO https://github.com/ryanoasis/nerd-fonts/releases/download/v3.0.0/FiraCode.zip
unzip FiraCode.zip -d FiraCode
rm FiraCode.zip
$(BIN_DIR) $(FONTS_DIR):
mkdir -p $@