你好,Trae 团队:
Linux 版 trae-cn 的 deb 升级包通过系统图形「软件包安装器」双击安装时,被误判为与已安装包冲突而无法升级,但命令行 dpkg 可以正常升级。怀疑是 deb 控制字段(自引用 Conflicts)导致图形安装器预检误判,特此反馈。
【环境】
- OS:Linux Mint 22.3(基于 Ubuntu 24.04),amd64
- 已装版本:trae-cn 1.107.1-1789457470
- 升级包:TraeCode_CN-linux-x64.deb,版本 1.107.1-1789889316
- 安装方式:双击 deb 调用系统图形「软件包安装器」
【复现步骤】
- 已安装旧版 trae-cn;
- 文件管理器双击新版 TraeCode_CN-linux-x64.deb;
- 图形安装器顶部红色报错:错误:Breaks existing package ‘trae-cn’ conflict: trae-cn (),「安装软件包」按钮禁用,无法继续。
【根因分析】
新旧两个包的控制字段均为:
Package: trae-cn
Replaces: trae-cn
Provides: trae-cn
Conflicts: trae-cn(无版本约束,报错末尾为空括号)
命令行 dpkg 能识别这是同包升级(Replaces 特例放行):dpkg --dry-run -i TraeCode_CN-linux-x64.deb 退出码 0、无冲突;但图形安装器预检不做同包升级识别,看到 Conflicts: trae-cn 命中系统里已存在的 trae-cn,即判定冲突并阻止安装。
【建议】
- 打包时去掉自引用的 Conflicts: trae-cn(同包升级无需声明与自身冲突),或改为带版本约束;
- 或在 Linux 版下载/更新说明中提示:升级请用 sudo dpkg -i <包名>.deb(或 apt install ./<包名>.deb),不要用图形安装器双击升级。
【实测佐证】
命令行 sudo dpkg -i 升级成功,dpkg.log 记录:
upgrade trae-cn:amd64 1.107.1-1789457470 1.107.1-1789889316
status installed trae-cn:amd64 1.107.1-1789889316
用户配置(~/.config/Trae CN)不受影响。
希望后续版本修复,避免普通用户双击升级被卡住。谢谢!