#!/command/with-contenv bash # shellcheck shell=bash # NPM's own "prepare" service aborts the entire boot if /etc/letsencrypt is # not a mount. Home Assistant does not mount it, so point it at /data, which # Supervisor persists as a Docker volume. # # This is an s6-rc oneshot that "prepare" depends on, so it is guaranteed to # run first. NPM's image uses s6-overlay v3 and has no /etc/cont-init.d. if [ ! -L /etc/letsencrypt ]; then mkdir -p /data/letsencrypt if [ -d /etc/letsencrypt ] && [ -n "$(ls -A /etc/letsencrypt 2> /dev/null)" ]; then cp -a /etc/letsencrypt/. /data/letsencrypt/ 2> /dev/null || true fi rm -rf /etc/letsencrypt ln -sf /data/letsencrypt /etc/letsencrypt fi mkdir -p /data/letsencrypt echo "[obsidian-syncserver] /etc/letsencrypt -> /data/letsencrypt"