#!/usr/bin/env bash
set -euo pipefail

if [ "$(id -u)" -ne 0 ]; then
  echo "Run this command with sudo: sudo brz-healthos-repair-system" >&2
  exit 1
fi

restored=0

if [ -e /etc/os-release.brz-original ]; then
  rm -f /etc/os-release
  mv /etc/os-release.brz-original /etc/os-release
  rm -f /etc/os-release.brz-symlink-target
  restored=1
elif [ -s /etc/os-release.brz-symlink-target ]; then
  target="$(cat /etc/os-release.brz-symlink-target 2>/dev/null || true)"
  if [ -n "$target" ]; then
    rm -f /etc/os-release
    ln -s "$target" /etc/os-release
    rm -f /etc/os-release.brz-symlink-target
    restored=1
  fi
elif [ -r /usr/lib/os-release ] && grep -q '^NAME="BRZ HealthOS"' /etc/os-release 2>/dev/null; then
  rm -f /etc/os-release
  ln -s ../usr/lib/os-release /etc/os-release
  restored=1
fi

if [ "$restored" -eq 1 ]; then
  echo "Restored Ubuntu-owned /etc/os-release metadata."
else
  echo "/etc/os-release already appears to be distribution-managed; no repair was needed."
fi

if [ -x /usr/lib/update-notifier/apt-check ]; then
  if /usr/lib/update-notifier/apt-check >/dev/null 2>&1; then
    echo "Ubuntu update-notifier check: OK"
  else
    echo "Ubuntu update-notifier still reports an error. Run: /usr/lib/update-notifier/apt-check --human-readable" >&2
    exit 2
  fi
fi

echo "BRZ HealthOS system compatibility repair complete."
