#!/bin/bash
# 安装依赖 pyusb（Boot 模式 IAP / 设备识别用）。
# App 模式读本机 NUT(:3493) 显示，不直接 USB、与 NUT 共存；仅 Boot 模式直连 USB
# 做固件升级（此时 NUT 不把 Bootloader 当 UPS，无冲突）。
# 幂等；失败不阻塞安装，报错到 TRIM_TEMP_LOGFILE（README 有手动方案）。
if ! python3 -c 'import usb.core' 2>/dev/null; then
    if ! pip3 install --break-system-packages pyusb >/dev/null 2>&1; then
        if ! apt-get install -y python3-usb >/dev/null 2>&1; then
            echo "无法自动安装 pyusb。请手动执行：sudo pip3 install --break-system-packages pyusb" > "$TRIM_TEMP_LOGFILE"
        fi
    fi
fi
if ! python3 -c 'from cryptography.hazmat.primitives.asymmetric.ed25519 import Ed25519PublicKey' 2>/dev/null; then
    if ! apt-get install -y python3-cryptography >/dev/null 2>&1; then
        if ! pip3 install --break-system-packages cryptography >/dev/null 2>&1; then
            echo "应用更新需要 python3-cryptography，请安装后重试；监控不受影响。" > "$TRIM_TEMP_LOGFILE"
        fi
    fi
fi
exit 0
