CodeBuddy CN 在 Ubuntu 24.04 安装实录(deb 包全解析 + 反查安装方式)

CodeBuddy CN 在 Ubuntu 24.04 安装实录(deb 包全解析 + 反查安装方式)

本文记录 CodeBuddy CN(腾讯 AI IDE)在 Ubuntu 24.04 LTS 上的 deb 安装过程。除了安装步骤本身,重点讲两件事:

  1. 这个 deb 包到底往系统里放了什么——从 dpkg -s 元数据一路拆到 Electron 应用的目录布局。
  2. 如何反查一个已装软件当初是怎么装上的——一套通用排查方法,三级递进,最后能精确到当初敲的那条命令。

适用版本:CodeBuddy CN 4.12.0(构建串 4.12.0.37847260-b4c35ed0)/ Ubuntu 24.04 LTS (x86_64)


一、环境说明

  • 系统:Ubuntu 24.04 LTS (Noble Numbat),架构 x86_64 / amd64
  • 目标:CodeBuddy CN —— 腾讯出品的 AI IDE,基于 VS Code 内核的独立桌面版
  • 包名:codebuddy-cn,版本 4.12.0

先确认本机环境:

1
2
3
lsb_release -a                # Ubuntu 24.04 LTS / Release: 24.04 / Codename: noble
uname -m # x86_64
dpkg --print-architecture # amd64

二、先分清:CodeBuddy 和 WorkBuddy 是两个东西

腾讯系名字里带 Buddy 的产品有两个,容易搞混,平台支持完全不同:

产品 定位 Linux 支持
CodeBuddy AI 编程 IDE(写代码、改项目) 有 Linux deb 包,支持 x64 / arm64 / armhf
WorkBuddy 通用职场 AI 智能体工作台 官方安装文档仅列 Windows 10+ / macOS 12+

腾讯云的 WorkBuddy 安装文档(产品文档 1831/134387)通篇只讲 macOS 和 Windows 两个平台的安装方法,没有 Linux 章节。所以在 Ubuntu 上选 CodeBuddy 不是偏好问题,是能不能装的问题。

提醒网上冲浪的同学:搜索 WorkBuddy 是否支持 Linux,会蹦出一批 CSDN / 百度文库文章信誓旦旦说“全面支持 Linux、提供 tar.gz 和 AppImage、兼容麒麟统信”。这些多半是 AI 生成的内容农场稿,不构成安装依据。判断一件事能不能装,请以官方文档为准。

反过来说,CodeBuddy 的 deb 包元数据里明确写着支持三种架构(见第四节 Description 字段),比华为云 CodeArts 的 Linux 桌面版(只有 ARM64,amd64 机器只能绕道 CLI)友好得多。


三、安装步骤

1. 下载 deb 包

从 CodeBuddy 官网(https://www.codebuddy.ai)下载 Linux x64 版本,得到类似这样的文件:

1
CodeBuddy-linux-x64-4.12.0.37847260-b4c35ed0-cn.deb

文件名里的 37847260-b4c35ed0 是构建流水线的提交信息,装完后可以用来核对版本。

2. 安装(推荐用 apt 而不是 dpkg)

1
2
cd ~/Downloads
sudo apt install ./CodeBuddy-linux-x64-4.12.0.37847260-b4c35ed0-cn.deb

为什么用 apt install ./xxx.deb 而不是 dpkg -i xxx.deb?

这是本文最实用的一条建议。dpkg -i 只负责解包,不解决依赖,装完大概率报一堆依赖关系问题,还得再补一句 sudo apt-get install -f -y 收拾残局。而 apt install ./xxx.deb 会:

  • 自动识别这是个本地 deb
  • 自动从软件源补装缺失依赖
  • 一步到位,不留半成品状态

从 Ubuntu 16.04 起 apt 就支持接本地 deb 路径了,别再执着于 dpkg -i。

3. 验证

1
2
dpkg -l | grep codebuddy
# ii codebuddy-cn 4.12.0 amd64 CodeBuddy CN - AI-powered IDE for Linux.

出现 ii 开头即可放行(两个 i 的含义见第七节)。


四、deb 元数据全解析:dpkg -s 输出逐行读

装完别急着开 IDE,先看这个包在 dpkg 数据库里的完整档案:

1
dpkg -s codebuddy-cn

实际输出(本机真实数据,长依赖已折叠):

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
Package: codebuddy-cn
Status: install ok installed
Priority: optional
Section: devel
Installed-Size: 628152
Maintainer: CodeBuddy Team <codebuddy@tencent.com>
Architecture: amd64
Version: 4.12.0
Depends: ca-certificates, libc6 (>= 2.17), libstdc++6 (>= 5), libasound2 (>= 1.0.17) | libasound2t64,
libatk-bridge2.0-0 (>= 2.5.3) | ..., libgtk-3-0 (>= 3.9.10) | libgtk-4-1, libnss3 (>= 3.26),
libgbm1 (>= 17.1.0~rc2), libdrm2 (>= 2.4.60), libxkbcommon0 (>= 0.5.0), xdg-utils (>= 1.0.2), ...
Pre-Depends: dpkg (>= 1.16.1)
Recommends: libvulkan1
Description: CodeBuddy CN - AI-powered IDE for Linux.
CodeBuddy CN is an AI-powered integrated development environment.
Supports x64, arm64, and armhf architectures.
Homepage: https://www.codebuddy.ai

几个值得看一眼的点:

  • Installed-Size: 628152 —— 单位是 KB,约 613 MB 磁盘占用。IDE 类应用的正常体量。
  • Section: devel —— 归类为开发工具。
  • Maintainer: CodeBuddy Team <codebuddy@tencent.com> —— 腾讯官方打包,不是第三方改包。
  • Depends 里那一长串 libxxx | libxxxt64 —— 这是 Ubuntu 24.04 t64 过渡库的典型写法(libatk1.0-0 与 libatk1.0-0t64 二选一)。看到这种写法说明这个包专门为 24.04+ 适配过,老版本 Ubuntu(22.04 及以前)装它可能在依赖上翻车。
  • 依赖清单里有 libgtk-3-0、libnss3、libgbm1、libasound2 —— Electron / Chromium 应用的标准依赖组合,直接暴露了技术栈。

再看它一共往系统里塞了多少文件:

1
dpkg -L codebuddy-cn | wc -l     # 6392

近 6400 个文件,典型的 Electron 应用体积。


五、文件布局:一个 VS Code 分支版长什么样

看看它往哪儿放了东西:

1
dpkg -L codebuddy-cn | grep -E "\.desktop$|/usr/bin/"

输出:

1
2
3
/usr/bin/buddycn
/usr/share/applications/buddycn.desktop
/usr/share/applications/buddycn-url-handler.desktop

主程序目录在 /usr/share/buddycn(VS Code 系应用的经典布局)。

/usr/bin/buddycn 其实是个软链接:

1
2
file /usr/bin/buddycn
# /usr/bin/buddycn: symbolic link to /usr/share/buddycn/bin/buddycn

这是 Electron 应用的标准做法——真实二进制藏在 /usr/share/buddycn/bin/,对外只用 /usr/bin 里的软链接暴露命令。

再看桌面入口文件,能进一步确认它的血统:

1
cat /usr/share/applications/buddycn.desktop
1
2
3
4
5
6
7
8
9
10
[Desktop Entry]
Name=CodeBuddy CN
Comment=Code Editing. Redefined.
GenericName=Text Editor
Exec=/usr/share/buddycn/bin/buddycn %F
Icon=buddycn
Type=Application
StartupWMClass=CodeBuddy CN
Categories=TextEditor;Development;IDE;
Keywords=vscode;

Keywords=vscode —— 官方自己承认了这是 VS Code 系的分支版(Cursor、Windsurf 都是同一套路数)。

另一个 buddycn-url-handler.desktop 注册了 URL 协议:

1
2
MimeType=x-scheme-handler/codebuddycn;
Exec=/usr/share/buddycn/bin/buddycn --open-url %U

意味着 codebuddycn:// 可以被浏览器或网页唤起(比如网页上一键打开本地项目、OAuth 登录回调)。

另外注意:它的用户配置目录叫 ~/.config/CodeBuddy CN/,而不是 ~/.config/Code/。这条本身就是个判据——配置目录以产品自身命名,说明它是独立 IDE 而不是 VS Code 里的一个插件;若装的是插件,配置会统一落在宿主的 ~/.config/Code/User/ 下面。


六、日常使用与卸载

启动

1
2
3
buddycn                   # 命令行启动
buddycn . # 在当前目录打开项目
buddycn --new-window # 新窗口

或在「应用程序」菜单里搜索 CodeBuddy CN。

卸载

1
2
sudo apt remove codebuddy-cn     # 卸载程序,保留配置
sudo apt purge codebuddy-cn # 连配置一起清

注意 purge 清理的是 /usr/share/buddycn 这类系统级文件;用户配置需要单独删:

1
rm -rf ~/.config/"CodeBuddy CN"     # 目录名有空格,必须加引号

这里有个容易踩的坑:因为配置目录名叫 CodeBuddy CN(带空格),所有 shell 命令里操作它都得加引号或转义,否则会被当成两个参数。


七、进阶:反查任意软件当初是怎么装的

这一节是本文的方法论核心。给你一台别人装好的机器,怎么在不看 history 的情况下还原某个软件的安装方式?三级递进:

第 1 级:dpkg -l —— 是不是包管理器装的

1
2
dpkg -l | grep codebuddy
# ii codebuddy-cn 4.12.0 amd64 CodeBuddy CN - AI-powered IDE for Linux.

只要 dpkg 数据库里有它,就一定是 deb 安装的,可以直接排除以下几种方式:

安装方式 会不会出现在 dpkg -l
deb 包(dpkg / apt) 会
AppImage 绿色版 不会
tar.gz 解压即用 不会
snap / flatpak 不会(各自用 snap list / flatpak list 查)

开头的 ii 两个字母也别放过:第一个是期望状态(i = 期望已安装),第二个是当前状态(i = 已安装且配置完成)。看到 iU、rc 之类的组合,说明装了一半或只残留了配置文件。

第 2 级:apt-cache policy —— 从哪个源来的

1
apt-cache policy codebuddy-cn

输出:

1
2
3
4
5
6
codebuddy-cn:
Installed: 4.12.0
Candidate: 4.12.0
Version table:
*** 4.12.0 100
100 /var/lib/dpkg/status

重点看版本来源:只有 /var/lib/dpkg/status,没有任何仓库地址。

  • 如果你用 sudo add-apt-repository 加了第三方源再 apt install,这里会显示类似 500 https://xxx/ubuntu noble/main amd64 Packages 的条目。
  • 这里只有 status 文件 + 优先级 100,说明它来自一个本地 deb 文件,而不是任何软件源。

补充:/var/lib/dpkg/status 的优先级固定为 100,所有本地 deb 装出来的包都是这个样子,不代表来源是官方仓库。

第 3 级:/var/log/apt/history.log —— 精确到最后那条命令

前两级只能推断“本地 deb 装的”,但**无法区分 dpkg -i 和 apt install ./xxx.deb**——这两者对包管理器而言最终结果几乎一样。

决定性证据在 apt 的操作日志里:

1
grep -i codebuddy /var/log/apt/history.log

真实输出:

1
2
Commandline: apt install ./CodeBuddy-linux-x64-4.12.0.37847260-b4c35ed0-cn.deb
Install: codebuddy-cn:amd64 (4.12.0)

Commandline: 字段一字不差地记下了当初敲的命令,连完整的 deb 文件名、构建串都保留着。

原理:dpkg 作为底层工具,只在 /var/log/dpkg.log 里留下拆包状态流水;而 apt 作为上层管理器,会把每次事务的完整命令行写进 history.log。

1
2
3
4
grep -i codebuddy /var/log/dpkg.log
# 2026-09-22 16:33:38 status unpacked codebuddy-cn:amd64 4.12.0
# 2026-09-22 16:33:38 configure codebuddy-cn:amd64 4.12.0 <none>
# 2026-09-22 16:33:40 status installed codebuddy-cn:amd64 4.12.0

两份日志交叉验证:安装时间 2026-09-22 16:33:38,从解包到 installed 耗时 2 秒,且没有任何依赖修复记录——这也侧面印证了第三节的建议:直接 apt install ./xxx.deb,依赖在装之前就备齐了,干干净净一次过。

一个辅助判据:

1
apt-mark showmanual codebuddy-cn     # codebuddy-cn

有输出说明它是手动安装的,而非被别的包作为依赖带进来的。若这里没输出,则多半是被动装上的。

方法总结

想知道什么 用什么命令 看什么
是否 deb 安装 dpkg -l | grep 名字 有 ii 记录即为 deb
来自仓库还是本地文件 apt-cache policy 名字 只有 status 说明是本地 deb
当初的确切命令 grep 名字 /var/log/apt/history.log Commandline 字段原样记录
安装时间 grep 名字 /var/log/dpkg.log status installed 的时间戳
手动装还是被依赖 apt-mark showmanual 名字 有输出即手动装
文件都装在哪 dpkg -L 名字 目录布局
某个文件属于哪个包 dpkg -S /路径/文件 反查归属包

一个易混淆点:绿色软件(AppImage / tar.gz)在这一套里查不到任何记录。这时改用 which 命令 配合 ls -la 看它落在 /opt、/usr/local 还是 ~/.local/bin,再用 file 判断是 ELF 二进制还是脚本。


八、排错速查表

现象 可能原因 处理方式
dpkg -i 后报依赖关系错误 dpkg 不自动解决依赖 改 sudo apt install ./xxx.deb,或补 sudo apt-get install -f -y
dpkg -l 查不到软件,但明明在用 是 AppImage / tar.gz / snap 装的 换 snap list、flatpak list、which 反查
buddycn: command not found /usr/bin 软链接缺失 重装包,或确认 PATH 含 /usr/bin
依赖里的 libxxxt64 提示不满足 系统版本过老(低于 24.04) 先升级系统,或换旧版 deb
桌面菜单搜不到图标 desktop 文件未被索引 注销重登,或确认该 desktop 文件存在
配置文件路径带空格导致命令报错 目录名为 CodeBuddy CN 加引号:~/.config/"CodeBuddy CN"
卸载后重装,旧配置还在 remove 不清家目录 用 purge + 手动删配置目录
想确认桌面应用还是插件形态 看配置目录名 ~/.config/CodeBuddy CN/ 是独立 IDE;落在 ~/.config/Code/ 才是 VS Code 插件

九、重点回顾

  1. Ubuntu 上选 CodeBuddy(有 Linux deb,支持 x64 / arm64 / armhf),WorkBuddy 官方安装文档只覆盖 Windows / macOS。网上说 WorkBuddy 支持 Linux 的博客基本是 AI 生成稿,别信。
  2. **装本地 deb 用 sudo apt install ./xxx.deb**,不要用 dpkg -i——前者会自动补齐依赖,一步到位。
  3. CodeBuddy CN 是 VS Code 分支版(desktop 文件里 Keywords=vscode 已自证),程序主体在 /usr/share/buddycn,/usr/bin/buddycn 只是软链接,并注册了 codebuddycn:// URL 协议。
  4. 依赖清单里大量的 libxxx | libxxxt64 写法,说明该包针对 Ubuntu 24.04 的 t64 库过渡做过适配,老系统可能不兼容。
  5. 反查安装方式三板斧:dpkg -l(是不是 deb)→ apt-cache policy(仓库还是本地文件)→ /var/log/apt/history.log(精确到当初那条命令,Commandline 字段原样留痕)。
  6. 配置目录是 ~/.config/CodeBuddy CN/,目录名带空格,写脚本时别忘了加引号。