跳到主要内容
AI教程

在 Linux 上安装、运行与构建 DeepSeek Harness 桌面版

本文介绍 DeepSeek Harness Linux 下游版本的用途、安装方式、源码构建、自动更新、安全校验与已知限制,帮助 x64 和 arm64 用户快速开始。

在 Linux 上安装、运行与构建 DeepSeek Harness 桌面版

项目简介

DeepSeek Harness Linux 是官方 DeepSeek Harness 的下游 fork,目标是为 Linux 用户提供可直接下载、安装和更新的桌面版本。它保留上游桌面的 agent、skill、联网能力、前端、插件体系与通信协议,只新增 Linux 打包、测试和分发相关支持。

注意:该项目不是 DeepSeek 官方发行版,也没有修改 agent 内核。上游仍处于 developer preview,可能出现频繁更新或破坏性变更。

项目同时支持 x64 和 arm64。前者适用于常见的 AMD、Intel 电脑,后者适用于树莓派 5、ARM 服务器,以及在 Apple Silicon 设备上运行的 Linux。

主要特性

  • 三种发行格式:提供 AppImage、.deb 和 .tar.gz。
  • 双架构支持:同时构建 x64 与 arm64 版本。
  • AppImage 自动更新:通过 electron-updater 和 nightly-linux.yml 更新通道工作。
  • 原生 CI:分别使用 ubuntu-24.04 和 ubuntu-24.04-arm runner 构建对应架构。
  • 跟随上游:agent 内核及主要桌面能力与官方项目保持同步。
  • MIT 许可:上游代码和新增的 Linux 打包层均按 MIT 许可证分发。

选择合适的安装包

AppImage:大多数用户的首选

AppImage 是单文件程序,不需要传统安装,并且支持项目提供的自动更新通道。它适合希望快速体验或避免修改系统包管理状态的用户。

DEB:适合 Debian 与 Ubuntu

.deb 文件可通过 Debian 系统的包管理工具安装,并能从应用菜单或终端启动。适合希望将应用集成到系统桌面环境的用户。

tar.gz:便携运行

.tar.gz 解压后即可运行,不需要安装。它适合便携目录、测试环境或无法安装系统软件包的场景。

安装前确认架构

先在终端中查看当前系统架构:

uname -m
  • 输出 x86_64 时,下载文件名中包含 linux-x64 的版本。
  • 输出 aarch64 或 arm64 时,下载文件名中包含 linux-arm64 的版本。

安装包可从项目的 Releases 页面获取。请只从该仓库的 Release 下载社区构建。

方式一:运行 AppImage

AppImage 是 README 推荐的安装方式。它依赖 FUSE 2,因此应先根据发行版安装对应运行时。

Debian 或 Ubuntu 用户执行:

sudo apt install libfuse2

Fedora 或 RHEL 系用户执行:

sudo dnf install fuse2

下载与架构匹配的 AppImage 后,为文件增加执行权限。下面以 x64 文件为例:

chmod +x deepseek-harness-*-linux-x64.AppImage
./deepseek-harness-*-linux-x64.AppImage

arm64 用户需要将命令中的 linux-x64 换成 linux-arm64,或直接使用实际下载的文件名。

方式二:安装 DEB 包

在 Debian、Ubuntu 及其衍生发行版中,可使用 dpkg 安装下载好的软件包:

sudo dpkg -i deepseek-harness-*-linux-x64.deb

安装完成后,可以从桌面应用菜单启动,也可以在终端中运行:

deepseek-harness

使用 arm64 系统时,应安装文件名包含 linux-arm64 的 DEB 包。

方式三:运行便携压缩包

如果不希望安装系统软件包,可以解压 .tar.gz 并直接运行目录中的启动入口:

tar -xzf deepseek-harness-*-linux-x64.tar.gz
cd deepseek-harness-*-linux-x64
./deepseek-harness

arm64 用户同样需要选择并解压对应架构的文件。

基本使用

程序启动后,即可使用从上游继承的桌面端能力,包括 agent、skill、联网功能和桌面前端。该 Linux fork 没有改变 agent 内核、插件体系或通信协议,因此相关行为会跟随官方 DeepSeek Harness 的实现。

如果使用 AppImage,可以保留下载的单文件并直接重复运行;如果安装了 DEB 包,则可通过 deepseek-harness 命令或应用菜单启动;便携版则应从解压目录运行 ./deepseek-harness。

在远程桌面或无显示环境中运行

程序是桌面应用。在远程服务器配合 VNC 使用时,需要确保 DISPLAY 已正确设置。例如,在 xfce4 与 TigerVNC 环境中,显示编号可能是 :1:

export DISPLAY=:1
./deepseek-harness

显示环境可用时,桌面程序会自动拉起。实际的显示编号应以当前 VNC 或图形会话配置为准。

从源码构建

准备依赖

源码构建需要 Node.js 24 或更高版本、pnpm,以及构建主机上的 libfuse2。其中 libfuse2 用于组装 AppImage。

克隆并安装依赖

git clone https://github.com/Zhou-Yujing114514/deepseek-harness-linux.git
cd deepseek-harness-linux
pnpm install

准备 Linux 环境文件

复制项目提供的示例文件,并按需填写发布设置:

cp apps/desktop/.env.linux.example apps/desktop/.env.linux

构建目标架构

构建 x64 安装包:

pnpm --dir apps/desktop run package:linux:x64

构建 arm64 安装包:

pnpm --dir apps/desktop run package:linux:arm64

每种架构都会生成 AppImage、DEB 和 tar.gz 三种格式。项目的 Desktop (Linux) 工作流也会在原生 runner 上按需构建,产物可从 GitHub Actions Artifacts 或自动创建的 Release 获取。

自动更新与安全校验

AppImage 通过 electron-updater 使用 AppImage 更新通道,更新描述符为 nightly-linux.yml,传输过程使用 HTTPS。

重要:当前 Linux 构建没有代码签名。自动更新只依赖 HTTPS 传输与 feed 元数据校验,不包含代码签名验签,因此不适合直接用于高信任场景。

下载或更新后,应将文件的 SHA256 与 Release 页面提供的校验和进行对比。可以使用以下命令计算摘要:

sha256sum deepseek-harness-*-linux-x64.AppImage

请确认输出与 Release 中公布的值完全一致。DEB、tar.gz 和 arm64 文件也可以使用相同方式校验。

已知限制

  1. 构建未签名:Linux 二进制文件没有代码签名,也没有系统级公证。
  2. Office 文档转换暂不可用:DOCX、XLSX、PPTX 转 PDF 依赖 LibreOffice Kit 的 Linux 原生绑定,当前版本尚未随安装包分发。
  3. 上游仍在预览阶段:官方项目处于 developer preview,可能发生频繁或破坏性的变更。
  4. 没有应用商店版本:项目不经过应用商店发布流程。

Office 转换限制不会影响 README 明确列出的其他桌面能力,包括 agent、skill、联网功能和前端。

进阶建议

  • 优先匹配架构:不要在 x64 系统上下载 arm64 包,反之亦然。
  • 需要更新能力时选择 AppImage:DEB 和 tar.gz 的 README 未声明使用 AppImage 更新通道。
  • 保留校验流程:无论首次下载还是更新,都应核对 Release 中的 SHA256。
  • 关注上游变化:该 fork 会持续 rebase 上游提交,升级前应查看 Release 说明。
  • 开发者利用原生 CI:需要同时验证两种架构时,可使用项目现有的 Desktop (Linux) 工作流,而不是假设交叉构建结果等同于原生构建。

运行前还应阅读上游的 SAFETY.md。官方上游项目位于 deepseek-ai/deepseek-harness。

总结

DeepSeek Harness Linux 为官方桌面端补充了 x64 与 arm64 的 Linux 分发能力。普通用户可以优先选择支持自动更新的 AppImage,Debian 或 Ubuntu 用户也可安装 DEB,需要便携运行时则可选择 tar.gz。由于当前构建尚未签名,下载、更新和部署时务必核对 SHA256,并留意 developer preview 阶段的兼容性变化。