[[ $EUID == 0 ]] || exec sudo -E "${BASH_SOURCE[0]}" "$@"
-source /usr/local/lib/err
+set -e; . /usr/local/lib/bash-bear; set +e
usage() {
cat <<'EOF'
elif ping -q -c1 -w1 $h.b8.nz &>/dev/null; then
# in case we took it home
targets+=(x3.b8.nz)
+ elif ping -q -c1 -w1 ${h}w.b8.nz &>/dev/null; then
+ targets+=(x3w.b8.nz)
else
targets+=(x3wg.b8.nz)
fi
uninstalled-file-die $f
fi
done
- if ! diff -q /a/bin/errhandle/err /usr/local/lib/err; then
+ if ! diff -q /a/bin/bash-bear-trap/bash-bear /usr/local/lib/bash-bear; then
uninstalled-file-die err
fi
if $check_installed; then
fi
cd /a/opt/btrbk
m make install
+ cd /
fi
# TODO: i wonder if there should be an option to send to the default
prospective_mps+=(/o)
fi
if [[ $source_host == "$HOST2" ]]; then
- prospective_mps+=(/a /ar /qr /qd /q)
+ prospective_mps+=(/a /qr /qd /q)
fi
else
if [[ $HOSTNAME == "$MAIL_HOST" ]]; then
prospective_mps+=(/o)
fi
if [[ $HOSTNAME == "$HOST2" ]]; then
- prospective_mps+=(/a /ar /qr /qd /q)
+ prospective_mps+=(/a /qr /qd /q)
fi
if $kd_spread; then
- prospective_mps=(/a /ar /o /qr /qd /q)
+ prospective_mps=(/a /o /qr /qd /q)
fi
fi
# note: put q last just in case its specific retention options were to
echo copying output to $log_path
exec &> >(pee cat 'ts "%F %T"|dd of='$log_path' status=none')
-
+# print some non-default opts
if $verbose; then
- printf " options: conf_only=%s\ndry_run=%s\nrate_limit=%s\nverbose=%s\ncmd_arg=%s\n" "$conf_only" "$dry_run" "$rate_limit" "$verbose" "$cmd_arg"
+ opts_show=()
+ if ! $conf_only; then
+ opts_show+=(conf_only=true)
+ fi
+ if ! $dry_run; then
+ opts_show+=(dry_run=true)
+ fi
+ if [[ $rate_limit != no ]]; then
+ opts_show+=("rate_limit=$rate_limit")
+ fi
+ if [[ $cmd_arg != run ]]; then
+ opts_show+=(cmd_arg=$cmd_arg)
+ fi
+ if (( ${#opts_show[@]} >= 1 )); then
+ first=true
+ for opt in ${opts_show[@]}; do
+ if $first; then
+ printf "%s" "$opt"
+ else
+ printf " %s" "$opt"
+ fi
+ done
+ echo
+ fi
fi
if [[ -v targets ]]; then
echo "mountpoints: ${mountpoints[*]}"
-
-
# pull_reexec stops us from getting into an infinite loop if there is some
# kind of weird problem
pulla=false
if ! $pull_reexec && [[ $source ]] && $pulla ; then
tmpf=$(mktemp)
m rsync -ra $source:/usr/local/bin/{mount-latest-subvol,check-subvol-stale} /usr/local/bin
- m rsync -ra $source:/usr/local/lib/err /usr/local/lib
+ m rsync -ra $source:/usr/local/lib/bash-bear /usr/local/lib
m scp $source:/a/bin/distro-setup/btrbk-run $tmpf
if ! diff -q $tmpf ${BASH_SOURCE[0]}; then
e "found different version on host $source. reexecing"