2026-09-19 20:02:21 +08:00
|
|
|
#!/bin/bash
|
|
|
|
|
# 把 collaplex-audio 打成 deb 包(纯脚本 + 数据, Architecture: all)
|
|
|
|
|
#
|
|
|
|
|
# bash 打包deb.sh 默认版本 1.0.0
|
|
|
|
|
# VER=1.0.1 bash 打包deb.sh 指定版本
|
|
|
|
|
#
|
|
|
|
|
# 产物: 发布/collaplex-audio_<版本>_all.deb
|
|
|
|
|
#
|
|
|
|
|
# 说明: 装到 /usr/share/collaplex-audio, 只提供 /usr/bin/collaplex-audio 一个入口。
|
|
|
|
|
# 不带 venv(依赖系统 python3-numpy / python3-scipy), 不装到 pipewire 配置目录 ——
|
2026-09-19 20:13:12 +08:00
|
|
|
# 也就是说**装完不会自动启用**, 要手动 collaplex-audio start, 也不做开机自启。
|
2026-09-19 20:02:21 +08:00
|
|
|
set -eu
|
|
|
|
|
|
|
|
|
|
ROOT="$(cd "$(dirname "$0")" && pwd)"
|
|
|
|
|
VER="${VER:-1.0.0}"
|
|
|
|
|
OUT="$ROOT/发布"
|
|
|
|
|
PKG="collaplex-audio_${VER}_all"
|
|
|
|
|
STAGE="$OUT/$PKG"
|
|
|
|
|
|
|
|
|
|
echo "=== 打包 collaplex-audio $VER ==="
|
|
|
|
|
rm -rf "$STAGE"
|
|
|
|
|
mkdir -p "$STAGE/DEBIAN" "$STAGE/usr/share/collaplex-audio" "$STAGE/usr/bin"
|
|
|
|
|
|
|
|
|
|
# ---- 源码 ----
|
|
|
|
|
for d in dsp bin pipewire web hrir reverb 脚本; do
|
|
|
|
|
cp -a "$ROOT/$d" "$STAGE/usr/share/collaplex-audio/"
|
|
|
|
|
done
|
|
|
|
|
cp "$ROOT/README.md" "$STAGE/usr/share/collaplex-audio/"
|
2026-09-19 20:32:31 +08:00
|
|
|
# 备份文件不入包(IR 的 .orig 备份只留在源码树里)
|
|
|
|
|
find "$STAGE" -name "*.orig.wav" -delete
|
2026-09-19 20:02:21 +08:00
|
|
|
find "$STAGE/usr/share" -name '__pycache__' -type d -exec rm -rf {} + 2>/dev/null || true
|
|
|
|
|
chmod -R a+rX "$STAGE/usr/share"
|
|
|
|
|
|
|
|
|
|
# ---- 主命令 ----
|
|
|
|
|
install -m 755 "$ROOT/bin/collaplex-audio" "$STAGE/usr/bin/collaplex-audio"
|
|
|
|
|
|
|
|
|
|
# ---- control ----
|
|
|
|
|
SIZE=$(du -sk "$STAGE/usr" | cut -f1)
|
|
|
|
|
cat > "$STAGE/DEBIAN/control" <<EOF
|
|
|
|
|
Package: collaplex-audio
|
|
|
|
|
Version: ${VER}
|
|
|
|
|
Architecture: all
|
|
|
|
|
Maintainer: Collaplex <collaplex@localhost>
|
|
|
|
|
Installed-Size: ${SIZE}
|
|
|
|
|
Depends: python3 (>= 3.10), python3-numpy, python3-scipy, pipewire, wireplumber
|
|
|
|
|
Recommends: google-chrome | chromium
|
|
|
|
|
Section: sound
|
|
|
|
|
Priority: optional
|
|
|
|
|
Description: Collaplex 音效 — 全局音频的响度归一化 + 双耳 HRTF + 32 段 EQ + 房间混响
|
|
|
|
|
把系统输出接成一条链: 虚拟声卡 -> 响度归一化 -> 双耳 HRTF(含房间混响) -> 32 段 EQ + 总音量
|
|
|
|
|
-> 数字输出。自带本地控制面板(双声道电平表 / 归一化电平与动态增益 / 湿度与总音量滑块 /
|
|
|
|
|
32 段 EQ + 10 个预设)。
|
|
|
|
|
.
|
|
|
|
|
HRTF 用 SADIE II 真人数据集(约克大学, 受试者 H4, 96 kHz / 512 tap)。
|
|
|
|
|
.
|
2026-09-19 20:13:12 +08:00
|
|
|
装完不会动你的系统音频: 手动跑 collaplex-audio start 才接管, stop 即还原。
|
2026-09-19 20:02:21 +08:00
|
|
|
EOF
|
|
|
|
|
|
|
|
|
|
# ---- 构建 ----
|
|
|
|
|
dpkg-deb --root-owner-group --build "$STAGE" "$OUT/${PKG}.deb" >/dev/null
|
|
|
|
|
echo "已生成: $OUT/${PKG}.deb"
|
|
|
|
|
dpkg-deb --info "$OUT/${PKG}.deb" | sed -n '1,12p'
|
|
|
|
|
echo
|
|
|
|
|
echo -n "大小: "; du -h "$OUT/${PKG}.deb" | cut -f1
|