#!/bin/sh

passphrase=
appendonly=

case "$(cat "${__object:?}/parameter/encryption")" in
	none)
		enc=none
		;;
	repokey)
		enc=repokey
		if [ -f "${__object:?}/parameter/passphrase" ];
		then
			passphrase="$(cat "${__object:?}/parameter/passphrase")"
		else
			echo "__borg_repo cannot use repokey encryption with no passphrase. Aborting." >&2;
			exit 1;
		fi
		;;
	*)
		echo "$enc is not a known encryption mode for __borg_repo. Aborting." >&2
		exit 1;
esac

if [ -f "${__object:?}/parameter/append-only" ];
then
	appendonly='--append-only'
fi

if [ -f "${__object:?}/parameter/owner" ];
then
	doas="sudo -u '$(cat "${__object:?}/parameter/owner")'"
fi

cat <<- EOF
	set -x
	if [ ! -d "/${__object_id:?}" ]; then
		$doas BORG_NEW_PASSPHRASE=$passphrase borg init -e ${enc:?} $appendonly /${__object_id:?}
	fi
EOF

