#!/bin/sh # Timer target: rebuild the garden only when the vault or repo changed. # Successor to the Quartz update_quartz_docker.sh change-detection loop. set -eu REPO=$(CDPATH= cd -- "$(dirname -- "$0")/.." && pwd) VAULT="${VAULT:-/home/nox/docker/obsidian/vaults/weeslahw_coppermind}" STATE="$REPO/.build_state" cd "$REPO" git pull -q sig=$({ git rev-parse HEAD find "$VAULT" -name .obsidian -prune -o -type f -printf '%T@ %p\n' | sort } | sha256sum | cut -d' ' -f1) if [ -f "$STATE" ] && [ "$(cat "$STATE")" = "$sig" ]; then exit 0 fi sh "$REPO/deploy/build.sh" printf %s "$sig" >"$STATE" echo "garden rebuilt $(date -Is)"