#!/bin/sh
set -eu
umask 077
/usr/bin/flock -n /run/hush-backup.lock /usr/bin/python3 - <<'PY'
import pathlib, sqlite3, shutil, subprocess
stage = pathlib.Path('/var/backups/hush')
stage.mkdir(mode=0o700, parents=True, exist_ok=True)
with sqlite3.connect('file:/var/lib/hush/accounts.sqlite?mode=ro', uri=True) as source:
    with sqlite3.connect(stage / 'accounts.sqlite') as target:
        source.backup(target)
shutil.copy2('/var/lib/hush/opaque-setup', stage / 'opaque-setup')
shutil.copy2('/etc/hush/maculab.json', stage / 'maculab.json')
subprocess.run(['/usr/local/sbin/maculab-restic', 'backup', str(stage), '--tag', 'hush'], check=True)
PY
