CodeBuddy CN 在 Ubuntu 24.04 安装实录(deb 包全解析 + 反查安装方式)
本文记录 CodeBuddy CN(腾讯 AI IDE)在 Ubuntu 24.04 LTS 上的 deb 安装过程。除了安装步骤本身,重点讲两件事:
- 这个 deb 包到底往系统里放了什么——从
dpkg -s 元数据一路拆到 Electron 应用的目录布局。
- 如何反查一个已装软件当初是怎么装上的——一套通用排查方法,三级递进,最后能精确到当初敲的那条命令。
适用版本: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 uname -m dpkg --print-architecture
|
二、先分清: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 开头即可放行(两个 i 的含义见第七节)。
四、deb 元数据全解析:dpkg -s 输出逐行读
装完别急着开 IDE,先看这个包在 dpkg 数据库里的完整档案:
实际输出(本机真实数据,长依赖已折叠):
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
|
近 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 其实是个软链接:
这是 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
|
只要 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,从解包到 installed 耗时 2 秒,且没有任何依赖修复记录——这也侧面印证了第三节的建议:直接 apt install ./xxx.deb,依赖在装之前就备齐了,干干净净一次过。
一个辅助判据:
1
| apt-mark showmanual 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 插件 |
九、重点回顾
- Ubuntu 上选 CodeBuddy(有 Linux deb,支持 x64 / arm64 / armhf),WorkBuddy 官方安装文档只覆盖 Windows / macOS。网上说 WorkBuddy 支持 Linux 的博客基本是 AI 生成稿,别信。
- **装本地 deb 用
sudo apt install ./xxx.deb**,不要用 dpkg -i——前者会自动补齐依赖,一步到位。
- CodeBuddy CN 是 VS Code 分支版(desktop 文件里
Keywords=vscode 已自证),程序主体在 /usr/share/buddycn,/usr/bin/buddycn 只是软链接,并注册了 codebuddycn:// URL 协议。
- 依赖清单里大量的
libxxx | libxxxt64 写法,说明该包针对 Ubuntu 24.04 的 t64 库过渡做过适配,老系统可能不兼容。
- 反查安装方式三板斧:
dpkg -l(是不是 deb)→ apt-cache policy(仓库还是本地文件)→ /var/log/apt/history.log(精确到当初那条命令,Commandline 字段原样留痕)。
- 配置目录是
~/.config/CodeBuddy CN/,目录名带空格,写脚本时别忘了加引号。