_fix_conf() {
    local conf=/etc/conf.d/distccd
    if [ -f "$conf" ] && grep -q '^DISTCC_ARGS=' "$conf"; then
        cp -a "$conf" "${conf}.pre-distcc-avahi-fix.$(date +%Y%m%d-%H%M%S)"
        sed -i 's/^DISTCC_ARGS=/DISTCC_OPTS=/' "$conf"
        echo "==> distcc-avahi: renamed DISTCC_ARGS -> DISTCC_OPTS in $conf"
        echo "    (the systemd unit reads \$DISTCC_OPTS; backup left as ${conf}.pre-distcc-avahi-fix.*)"
    fi
}

_warn_masq() {
    if [ ! -d /usr/lib/distcc ]; then
        echo "==> distcc-avahi: /usr/lib/distcc/ not populated; running update-distcc-symlinks"
        /usr/bin/update-distcc-symlinks 2>/dev/null || true
    fi
}

post_install() {
    _fix_conf
    _warn_masq
}

post_upgrade() {
    _fix_conf
    _warn_masq
    if systemctl is-active --quiet distccd 2>/dev/null; then
        echo "==> distcc-avahi: distccd.service is active; restart with"
        echo "    'sudo systemctl restart distccd' to pick up any conf change"
    fi
}
