dsh-plugin-desktop-installer:为 DSH Desktop 提供插件安装、管理及重启能力

DSH 的理念是「一切皆插件」。在实际开发中,管理第三方插件、检查版本更新或重启桌面应用,往往需要频繁切换窗口或手动执行命令。这会打断开发流。我们需要一个在桌面端直接完成这些操作的能力。

是什么

这个插件为 DSH Desktop 提供了插件安装、管理及重启能力,由 deronghe 维护,采用 MIT 许可证。

核心功能

  • 重启 Desktop 按钮:在设置面板右上角提供一键重启能力。
  • 按地址安装插件:在「设置 → 插件 → 安装插件」标签页,输入仓库地址并选择目标 profile(desktop / web)即可安装。
  • 第三方插件管理:在「设置 → 插件 → 第三方插件」标签页,列出当前 profile 里从第三方安装的插件(内置 bundle 之外),并支持卸载、启用、停用及版本检测。

安装与启用

在终端执行以下命令安装该插件:

dsh plugin --profile desktop add github:deronghe/dsh-plugin-desktop-installer

安装后重启 Desktop 生效。

典型用法

  1. 安装完成后,重启 DSH Desktop。
  2. 在「设置」中点击右上角的「重启 Desktop」按钮。
  3. 在「设置 → 插件 → 安装插件」标签页中,输入仓库地址(支持 github:owner/repo 或 @scope/pkg 格式)并选择目标 profile 即可完成安装。

技术结构

该插件采用前后端分离结构:

  • lib/index.js:作为 Host 端,注册了 /api/dsh-plugin-installer/{profiles,install,restart,installed,uninstall,set-enabled,check-updates,update} 八个 HTTP 接口。
  • lib/client.js:作为浏览器端,负责设置界面的交互逻辑。
  • cordis.patch.yml:负责将本插件注入到 profile 组合中。

适用场景与限制

适用场景:需要集中管理桌面端插件,或需要通过界面快速重启桌面应用的开发者。

注意事项:
* Profile 限制:安装、卸载和更新能力依赖桌面版独有的 desktopPnpmBootstrap。在纯 web profile 下运行会提示「缺少安装能力」。启用、停用和列表功能只需读写 profile 的 package.json,不依赖桌面服务。
* 网络要求:版本检测需要联网,npm 插件查询 registry.npmjs.org,github: 插件查询 GitHub API(配置 GITHUB_TOKEN 环境变量可避免限流)。
* 生效范围:操作写入的是 $DSH_HOME/profiles/<name>,仅对本机该 profile 生效。

总结

这个插件将插件管理的操作集中到了桌面端的设置面板中。更多细节可参考其 GitHub 仓库 或 SkillHub 目录页。

羽毛球分组比赛记分
小程序二维码

欢迎使用《羽毛球分组比赛记分》微信小程序

小夜