#!/bin/sh
#Copyright: 2026 Aitor <aitor@genuen.org>
#License: CC0-1.0
#Comment: oneshot; invoke with: sv once resolvconf
#Comment: enable resolvconf updates

exec 2>&1

ebegin() { [ "${VERBOSE:-}" = no ] || echo "$@"; }
eend() { r=${1:-0}; shift || true; [ "$r" -eq 0 ] || [ "${VERBOSE:-}" = no ] || echo "$*" >&2; return "$r"; }
einfo() { [ "${VERBOSE:-}" = no ] || echo "$@"; }
ewarn() { echo "$@" >&2; }
eerror() { echo "$@" >&2; }

sv once mountall-bootclean.sh || true
[ -x /usr/sbin/resolvconf ] || exit 0
RUN_DIR=/run/resolvconf
ENABLE_UPDATES_FLAGFILE="${RUN_DIR}/enable-updates"
POSTPONED_UPDATE_FLAGFILE="${RUN_DIR}/postponed-update"
ebegin "Setting up resolvconf"
umask 022
rm -f "$RUN_DIR"/resolv.conf "$ENABLE_UPDATES_FLAGFILE" "$POSTPONED_UPDATE_FLAGFILE"
rm -rf "${RUN_DIR}/interface/"*
mkdir -p "${RUN_DIR}/interface" || { eend 1; exit 1; }
:> "$POSTPONED_UPDATE_FLAGFILE" || { eend 1; exit 1; }
resolvconf --enable-updates || { eend 1; exit 1; }
eend 0
exit 0
