HERE := $(dir $(abspath $(lastword $(MAKEFILE_LIST)))) SOURCE_URL := https://git.cryptech.is/ SOURCE_TRAC_DB := bikeshed.cryptech.is:/home/trac/db/trac.db SOURCE_TRAC_ATTACHMENTS := bikeshed.cryptech.is:/home/trac/files/attachments REPO_HOST := bikeshed.cryptech.is REPO_PATH := /usr/local/git/repositories HTTP_HOST := $(shell hostname -f) HTTP_PORT := 8000 all: trac-to-pelican-home.md tools/extract.py --source-url ${SOURCE_URL} ln -f trac-to-pelican-home.md pelican/content/trac-to-pelican-home.md ./kludge-cgit-urls.py ./kludge-camelcase-oopsies.py mv pelican/content/DNSSEC/Requirements.md pelican/content/DNSSEC-Requirements.md rmdir pelican/content/DNSSEC cd pelican; pelican --output website --settings pelicanconf.py --fatal errors content trac-to-pelican-home.md: tools/trac-to-pelican-home.md (date '+Date: %Y-%m-%d %H:%M'; cat $<) > $@ fetch: rsync -aP --delete ${SOURCE_TRAC_DB} ${SOURCE_TRAC_ATTACHMENTS} . ssh -n ${REPO_HOST} 'sudo find ${REPO_PATH} -name "*.git"' | \ sed s=${REPO_PATH}/== | sort | jq -Rn '[inputs]' >repositories.json clean: rm -rf wiki pelican distclean: clean rm -rf trac.db attachments server: @echo http://${HTTP_HOST}:${HTTP_PORT}/ python3 -m http.server --directory pelican/website --bind ${HTTP_HOST} ${HTTP_PORT} check: linkchecker pelican/website .PHONY: all clean fetch distclean server check