One-click update for the self-built Linux dsh-desktop: check fork releases, download the deb, swap the app and restart.
Install
# from GitHub (first run asks for allowBuilds approval — follow the hint, retry)
dsh plugin --profile web add github:lin-1259/dsh-desktop-linux-updater
Any plugin you install runs third-party code with your own permissions — it can read your files, use your credentials, and reach the network, and tool approvals don’t sandbox it. GitHub-sourced plugins also run build scripts at install time — pnpm blocks those until you allow them, so an install can stop with ERR_PNPM_GIT_DEP_PREPARE_NOT_ALLOWED or ERR_PNPM_IGNORED_BUILDS; dsh prints the exact key to add under allowBuilds in your profile’s pnpm-workspace.yaml, and the install works on the next run. Allowing a build is a trust decision: only install sources you trust, and pin a commit (github:owner/repo#sha).
README
This plugin publishes its README in Chinese only.
桌面端 Linux 自建版一键更新插件 —— 官方 dsh-desktop 只发布 Windows/macOS,Linux 版需要 自建(官方源码 + Linux 打包补丁,经 GitHub Actions 构建发布)。本插件让 Linux 用户 在 设置 → 桌面端更新 里一键完成:检查新版本 → 下载 deb → 替换应用目录 → 自动重启。
安装
npx -y @deepseek-ai/dsh plugin --profile web add github:lin-1259/dsh-desktop-linux-updater
然后重启 dsh-desktop,在 设置 → 桌面端更新 看到卡片即安装成功。
前提:Linux 版 dsh-desktop 已安装(deb 解包到
~/.local/share/dsh-desktop或/opt/DSH Desktop均可,插件会自动检测)。
使用
| 按钮 | 行为 |
|---|---|
| 检查更新 | 查询发布仓库的 linux-* release,对比内置 harness 版本 |
| 更新并重启 | 下载 deb(~150MB)→ 解包 → 替换应用目录 → 自动重启 |
更新源默认指向 lin-1259/dsh-desktop(Linux 自建版发布仓库)。官方若开始发布 Linux
版,在插件配置里把 owner/repo 改成官方仓库即可,无需重装。
工作原理
- 检查:
GET /repos/<owner>/<repo>/releases找最新linux-<tag>release,取其 deb; 用<upstream>@<tag>的 package.json 里@deepseek-ai/dsh版本与本地内置版本比对。 - 更新:下载 deb →
dpkg-deb -x解包 → 写一个分离执行的交换脚本(sleep 3 等旧进程 退出 →mv旧目录为备份 →cp -a新目录 →gtk-launch重启)→pkill旧进程。 - 安全:更新接口带一次性 token +
sec-fetch-site同源校验;更新源仓库可配置, 请只指向你信任的发布方。
配置项(设置 → 插件 → 插件配置)
| 字段 | 默认 | 说明 |
|---|---|---|
owner |
lin-1259 |
发布 linux-* release 的仓库 owner |
repo |
dsh-desktop |
发布仓库名 |
upstream |
dataelement/dsh-desktop |
官方源码仓库(用于版本比对) |
appDir |
自动检测 | 应用安装目录,留空自动 |
autoRestart |
true |
更新后自动重启(false = 只替换,手动重启) |
兼容性
- dsh harness 0.1.1-rc.1(v0.5.0 桌面端)实测可用;较新/较旧版本大概率可用(仅用 webServer 路由 + settings 卡片两个稳定接口)。
- 仅 Linux(更新流程依赖
dpkg-deb、pkill、setsid)。
故障排查
| 现象 | 原因 / 处理 |
|---|---|
| 「检查更新」显示已是最新,但 GitHub 上明明有新版 | 插件对比的是内置 harness 版本(@deepseek-ai/dsh),不是 release 号——外壳小版本(如 v0.6.2→v0.6.3)引擎不变时不提示,属预期 |
| 下载很慢 / 超时 | GitHub 直连受限时可给 dsh 进程配代理(HTTPS_PROXY),或换网络 |
| 「磁盘空间不足」 | 更新需要约 3 倍 deb 体积(下载 + 解包)的余量,清理分区后再试 |
| 更新失败后应用没起来 | 交换脚本会自动回滚备份目录;仍异常时手动检查 ~/.local/share/dsh-desktop 是否有 .bak 目录,删掉坏的、把备份改回来即可 |
| 想绕过「已是最新」强制换外壳版本 | 插件配置把 upstream 换成目标 tag 对应的仓库版本线,或等引擎版本变化 |
License
MIT
Links
More in this category
bowenliang123/dsh-context★ 2125
DSH context insight panel: Context dashboard + /context command + Context browser — one-stop context lifecycle management with categorized composition, content details, evolution trends, compaction/injection events, and stats.
Han-1413141/dsh-cost-meter★ 420
Per-session and daily API cost, budget with usage %, official balance, history dashboard, and one-click official price sync with peak/off-peak pricing.
wssfk12138/dsh-damage-pulse★ 264
Tracks DeepSeek token usage, per-call and session costs, and account balance with cache-aware charge animations in the DSH Web UI.
zh667/TokenLedger★ 202
Sidebar usage panel that attributes tokens to the relay site that served each request, read from your existing provider config: today/month/all-time totals, per-site and per-model breakdowns, a year activity heatmap, and New API / Sub2API / DeepSeek balances.
Ychris12138/dsh-usage-stats★ 173
Multi-provider usage dashboard with provider/model token breakdowns, calendar drill-downs, account balances, and OpenCode Go / Z.ai subscription quota tracking.
PolinniZhong/dsh-personal-center★ 118
Personal center for DeepSeek Harness: cross-session usage statistics, per-model cost estimation, global custom instructions, a global font-size adjuster, a data-driven desktop pet with bitmap & vector skins, and a conversation status overview, all local and offline.
Community comments
Comments are public GitHub Discussions. Loading them connects to GitHub and Giscus; a GitHub account is required to post.