feat: 原生安装包 — deb/rpm/systemd + NSIS setup.exe + macOS pkg

此前交付的 tar.gz/zip 仅是解压直用包,补齐真正的平台安装包:
- Linux: .deb (dpkg-deb) 与 .rpm (rpmbuild),装 systemd 单元 + 专用
  系统账号 + /etc/webui4frpc 配置,非 root 运行 + 加固
- Windows: NSIS setup.exe,向导收集监听地址/凭据,注册卸载器 +
  防火墙放行(amd64/arm64)
- macOS: .pkg(在 Linux 上手工 xar+mkbom 组装 flat package),launchd
  开机自启 + env 配置文件(amd64/arm64)
- scripts/release.sh 纳入 build_installers.sh 阶段;README 增「安装」
  章节逐平台说明

已知限制:rpmbuild 无法在非 RHEL 主机交叉构建 aarch64(Debian rpm
只有 x86_64 构建 arch),aarch64 rpm 需在原生 ARM 机器构建;Linux/ARM
场景已由 deb-arm64 覆盖。
This commit is contained in:
JianFeeeee
2026-08-28 08:36:55 +08:00
parent 6ee901dc64
commit 15b1dcce8f
14 changed files with 974 additions and 0 deletions

42
packaging/deb/postinst Executable file
View File

@ -0,0 +1,42 @@
#!/bin/sh
# webui4frpc deb/rpm 安装后脚本:建用户、建目录、装服务
set -e
if ! getent group webui4frpc >/dev/null 2>&1; then
groupadd --system webui4frpc
fi
if ! getent passwd webui4frpc >/dev/null 2>&1; then
useradd --system --gid webui4frpc \
--home-dir /var/lib/webui4frpc --no-create-home \
--shell /usr/sbin/nologin \
--comment "webui4frpc service account" webui4frpc
fi
mkdir -p /var/lib/webui4frpc
chown -R webui4frpc:webui4frpc /var/lib/webui4frpc
chmod 750 /var/lib/webui4frpc
chown root:webui4frpc /etc/webui4frpc/webui4frpc.env 2>/dev/null || true
chmod 640 /etc/webui4frpc/webui4frpc.env 2>/dev/null || true
if command -v systemctl >/dev/null 2>&1; then
systemctl daemon-reload || true
systemctl enable webui4frpc.service || true
if [ -z "${DPKG_ROOT:-}" ]; then
systemctl restart webui4frpc.service || true
fi
fi
cat <<'EOF'
webui4frpc 已安装。
配置: /etc/webui4frpc/webui4frpc.env (请立即修改 W4F_USER / W4F_PASSWORD)
数据: /var/lib/webui4frpc
服务: systemctl status webui4frpc
界面: http://<本机地址>:7500
改完配置后执行: systemctl restart webui4frpc
EOF
exit 0