VERSION = 3.82

all: complete

# checkenv is redundant here but prevents execution of anything before failing
complete: checkenv tempdirs tarball removedirs distrib removetar

tarball:
	rsync -avu bin .bash .bash_profile .bashrc .flake8 .gitconfig .gnupg .perlcriticrc .profile .pylintrc .tmux.conf .tmux.conf.local tmux-gpakosz tmux-yank .vimrc --exclude=.git --exclude=.gitattributes --exclude=.github --exclude=.gitignore --exclude='LICENSE*' --exclude='README*' --exclude='*.local' distribute/tar/
	tar -C distribute/tar -cvJf dotfiles.tar.xz .
	rm -rf distribute/tar

tempdirs:
	@mkdir -pv distribute/tar

removedirs:
	rm -rf distribute/tar

distrib: checkenv
	ansible-playbook distrib.yml

checkenv:
	@if [ -z "$$DFDISTRIB" ];then printf "DFDISTRIB not set, cannot determine target.\\n" >&2;exit 101;fi

removetar:
	@rm -vf dotfiles.tar.xz