#!/usr/bin/env bash # 将仓库内 UCM2 overlay 与 WirePlumber Lua 安装到系统路径(需 sudo)。 # 用法:在仓库根目录执行 ./scripts/install-kaisa-ucm-overlay.sh # 安装前请先运行 ./scripts/disable-kaisa-pro-audio-wireplumber.sh set -euo pipefail REPO_ROOT="$(cd "$(dirname "${BASH_SOURCE[0]}")/.." && pwd)" if [[ ! -f "$REPO_ROOT/reference/ucm2/conf.d/sof-rt5682/sof-rt5682.conf" ]]; then echo "未找到 UCM 文件,请在仓库根目录执行。" >&2 exit 1 fi if ! command -v sudo &>/dev/null; then echo "需要 sudo。" >&2 exit 1 fi echo ">>> 安装 UCM2 -> /usr/share/alsa/ucm2/" sudo cp -a "$REPO_ROOT/reference/ucm2/conf.d/sof-rt5682" /usr/share/alsa/ucm2/conf.d/ sudo cp -a "$REPO_ROOT/reference/ucm2/GoogleKaisa" /usr/share/alsa/ucm2/ echo ">>> 安装 WirePlumber Lua -> /usr/share/wireplumber/main.lua.d/" sudo install -D -m0644 "$REPO_ROOT/wireplumber/main.lua.d/60-kaisa-ucm.lua" \ /usr/share/wireplumber/main.lua.d/60-kaisa-ucm.lua echo ">>> 重启用户 pipewire 栈" if systemctl --user is-system-running &>/dev/null; then systemctl --user restart wireplumber pipewire pipewire-pulse else echo "(无 user 会话,请登录后执行: systemctl --user restart wireplumber pipewire pipewire-pulse)" >&2 fi echo "完成。请按 OPERATION「UCM Jack 自动显示/隐藏」一节验收。"