ProcHub v0.5.0 从 GitHub 到 App Store,ProcHub 要过这几道关

2026-08-07 03:17:18    产品发布   

ProcHub v0.5.0 最大的变化不是新功能,而是为 Mac App Store 上架做好了准备,顺手填掉了两个老坑。

ProcHub 是款用 Go + Wails 写的跨平台进程管理器,把后台脚本、开发服务、常驻进程统一管起来,支持 Windows、macOS、Linux。v0.5.0 没有堆新功能,力气花在了两件事上:给 Mac App Store 上架铺路,顺手修掉 Windows 托盘和开机自启开关两个老问题。

一个工具从"能用"到"好用",往往藏在你看不见的细节里。

进程管理主页

🍎 为 Mac App Store 上架铺好了路

Mac 用户以后可以从 App Store 安装 ProcHub,更新交给系统,不用再手动下载安装包。

前端加了一个 isAppStoreBuild 编译期标识(import.meta.env.VITE_APPSTORE_BUILD === 'true'),App Store 构建会自动隐藏"检查更新"按钮、跳过启动时的版本检测。配套的 CI 工作流把环境变量注入 wails build -platform darwin/universal,再走签名、嵌入 provisioning profile、由内到外 codesign 的整套流程,只为通过 TestFlight 的两道硬校验(ITMS-90886、ITMS-90889)。

设置页

🖥️ Windows 托盘图标,这次真的回来了

Windows 用户之前可能遇到过:最小化到托盘后,图标不见了。

根因在消息循环。fyne.io/systrayRunWithExternalLoop 在 Windows 上把消息循环放到独立 goroutine,而 GetMessage 只处理当前线程的消息队列,托盘窗口的图标点击、TaskbarCreated 重注册没人响应。v0.5.0 在 Windows 上改用 systray.Run,让托盘窗口和消息循环待在同一线程。macOS 上反而必须用 RunWithExternalLoop:Wails 已占用主事件循环,二次调用会直接 panic。同一个库,两个平台,两种启动方式。

编辑进程

🔄 开机自启开关:能点了,也不会打断服务

进程卡片上的开机自启开关之前是摆设,被硬编码成了 disabled,想改只能进编辑弹窗,还得先停掉正在跑的进程。

v0.5.0 新增独立的 SetProcessAutoStart 后端接口,只更新配置里的 autoStart 标志并持久化,不触发 stop/start,切换开关时运行中的进程不受影响。配套单测覆盖了开启、关闭、未知进程三个分支。

新增进程高级设置

真正跨平台的软件,是把每个平台都当成唯一平台来做。

回顾:那些你可能一直在用的能力

  • 实时日志:stdout/stderr 分开捕获,滚动日志文件,排障不用再盯着终端。

进程日志

  • 开机自启:macOS 用 LaunchAgent、Linux 走 XDG Autostart、Windows 写注册表,三端各自走原生的路。
  • 环境变量:每个进程都能配独立的环境变量,一份配置跑多个环境。

环境变量

其他更新

  • macOS 沙盒收敛:移除用不到的 network.server 权限,只保留出站网络和用户选中的文件读写
  • 设置页拆成主题、语言、自启、版本、关于五个独立组件,进程弹窗统一命名,代码更好维护
  • 禁用浏览器拼写检查,敲命令时不再被红色波浪线打扰
  • 修复视图文件移动后遗留的导入路径错误

近期版本回顾 - v0.4.0 — 发布 - v0.3.0 — 发布 - v0.2.0 — 发布

这一版的每一处改动,都是为了让"管理进程"这件事更顺手。升级后遇到什么问题,欢迎来反馈。

你平时用什么工具管后台进程?踩过哪些坑?来评论区聊聊。

工具终会过时,但顺手的感觉不会。

QQ
微信
客服