dotfiles/zsh/makefile

42 lines
1.1 KiB
Makefile

SRC := $(shell dirname $(realpath $(lastword $(MAKEFILE_LIST))))
include ../lib/shared.mk
ZSH_DIR := ~/.zsh
ZPLUG_DIR := ~/.zplug
install: | init update
init:
$(info => Setting up zsh)
ifeq ($(shell [ ! -e $(ZPLUG_DIR) ] $(return_val_truthy) ), true)
export ZPLUG_HOME=$(ZPLUG_DIR) \
; git clone https://github.com/zplug/zplug $(ZPLUG_DIR) \
; $(report) "zplug installed"
endif
$(mk_link) $(SRC) ~/.zsh
$(mk_link) $(ZSH_DIR)/zshrc ~/.zshrc
$(mk_link) $(ZSH_DIR)/zlogin ~/.zlogin
$(mk_link) $(ZSH_DIR)/zprofile ~/.zprofile
$(mk_link) $(ZSH_DIR)/zshenv ~/.zshenv
chmod 700 $(ZSH_DIR)/transient
update:
ifeq ($(shell [ -e $(ZPLUG_DIR) ] $(return_val_truthy) ), true)
echo "=> Updating zplug"
source $(ZPLUG_DIR)/init.zsh ; zplug install ; zplug update
else
$(report) warn "No zplug install detected. Skipping."
endif
remove:
ifeq ($(shell [ -e $(ZPLUG_DIR) ] $(return_val_truthy) ), true)
$(report) warn "Leaving $(ZPLUG_DIR) directory."
endif
$(info => Removing zsh)
$(rm_link) ~/.zprofile
$(rm_link) ~/.zlogin
$(rm_link) ~/.zshrc
$(rm_link) ~/.zsh
$(rm_link) ~/.zshenv