“Electron is damaged and cannot be opened”

用户在 macOS(如 M4 芯片 MacBook Air)上下载并解压了 TextGen WebUI 的 Mac 构建版 tarball,然后尝试启动脚本时立即遇到系统弹窗报错。

"Electron is damaged and cannot be opened"

“Electron is damaged and cannot be opened”

快速结论:这个报错主要出现在 macOS 上运行 TextGen WebUI 的桌面 App 构建版(tarball)时,由 App 未签名触发。优先通过终端对解压后的整个目录运行 xattr -cr 命令来排除警告。

问题场景

用户在 macOS(如 M4 芯片 MacBook Air)上下载并解压了 TextGen WebUI 的 Mac 构建版 tarball,然后尝试启动脚本时立即遇到系统弹窗报错。

报错原文

"Electron is damaged and cannot be opened"

原因分析

macOS 会对未经过 Apple 开发者签名认证的应用进行 Gatekeeper 安全检查。TextGen WebUI 的 Mac 桌面构建版目前未被签名,因此系统拒绝运行并显示“Electron 已损坏且无法打开”的提示。这是已知的构建签名空缺,并非文件实际损坏。

环境排查

  • 确认操作系统:macOS(本 Issue 中为 macOS 15.x,M4 芯片环境)。
  • 确认下载来源:从 TextGen WebUI 官方发布页下载的 textgen-4.8-mac.tar.gz 或类似 tarball。
  • 确认你试图运行的是直接启动脚本(如 ./textgen),而非整个解压后目录。

解决步骤

  1. 打开终端(Terminal)。
  2. 定位到 TextGen WebUI 解压后所在的目录。例如,如果解压到 ~/Downloads/textgen-4.8/,则执行:
    cd ~/Downloads/textgen-4.8
  3. 整个目录递归执行 xattr -cr 命令以移除 Quarantine 属性和其他扩展属性:
    xattr -cr /path/to/your/textgen-4.8
  4. 重新启动 TextGen WebUI 脚本(例如双击或终端执行启动命令)。

重要提醒:不要只对单个可执行文件(如 textgen)运行 xattr,必须对整个解压后的顶层目录运行才能绕过 Gatekeeper 的递归检测。

验证方法

运行 xattr -cr 后,直接启动 TextGen WebUI 脚本,不再出现“Electron is damaged”弹窗,App 正常进入界面或后台进程,即表明问题已解决。

参考来源

oobabooga/textgen #7558

celebrityanime
celebrityanime
文章: 9218

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注