#!/usr/bin/env bash
set -euo pipefail
SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
ROOT_DIR="$(cd "$SCRIPT_DIR/../.." && pwd)"
# shellcheck source=../common.sh
. "$SCRIPT_DIR/../common.sh"

require_cmd install

# Primary profiles
install_nm() {
  local src="$1" dst="$2"
  if [ -f "$src" ]; then
    sudo install -m 600 -o root -g root "$src" "$dst"
    log "Installed NM profile: $(basename "$dst")"
  else
    warn "Missing NM source (skip): $src"
  fi
}

log "[20] Install NM primary profiles"
install_nm "$ROOT_DIR/configs/networkmanager/eno8303.nmconnection" /etc/NetworkManager/system-connections/eno8303.nmconnection
install_nm "$ROOT_DIR/configs/networkmanager/10-uplink-eno8403.nmconnection" /etc/NetworkManager/system-connections/10-uplink-eno8403.nmconnection

# Bridge/VLAN templates (kept disabled by default)
log "[20] Install NM bridge/VLAN templates (autoconnect=false)"
for f in br10.nmconnection br20.nmconnection br30.nmconnection br40.nmconnection \
         eno8403.10.nmconnection eno8403.20.nmconnection eno8403.30.nmconnection eno8403.40.nmconnection \
         slave-eno8403.10-to-br10.nmconnection slave-eno8403.20-to-br20.nmconnection \
         slave-eno8403.30-to-br30.nmconnection slave-eno8403.40-to-br40.nmconnection; do
  src="$ROOT_DIR/configs/networkmanager/bridges/$f"
  dst="/etc/NetworkManager/system-connections/$f"
  if [ -f "$src" ]; then
    sudo install -D -m 600 -o root -g root "$src" "$dst"
    log "Installed template: $f"
  else
    warn "Missing template (skip): $src"
  fi
done