安装过程一直报错,最后用hermes全过程重新配置,解决问题。
过程中的问题及解决方法如下:
问题一:Gatekeeper 签名验证失败
错误现象
双击 /Applications/TypeNo.app 报错:
"TypeNo.app" 已损坏,无法打开,你应该将它移到废纸篓
spctl -av /Applications/TypeNo.app 报错:
a sealed resource is missing or invalid
根本原因:从 GitHub 下载的 zip 包解压后,包含了 AppleDouble 文件(._Info.plist 等),这些文件破坏了代码签名的密封验证。
解决方法
# 1. 解压 zip 包
unzip -o TypeNo.app.zip
# 2. 删除所有 ._ 开头的 AppleDouble 文件
rm -f TypeNo.app/Contents/._*
# 3. 验证签名
spctl -av TypeNo.app
# 应输出:accepted / source=Notarized Developer ID
# 4. 安装到 Applications
cp -pR TypeNo.app /Applications/
关键:unzip 会自动生成 AppleDouble 文件,必须手动删除。cp -pR 保留了所有文件属性包括签名信息。
问题二:App Translocation(应用易地)
错误现象
- 从
/Applications 双击打开后,Activity Monitor 显示路径为:
/private/var/folders/.../AppTranslocation/.../TypeNo.app/...
- 菜单栏没有出现 TypeNo 图标
- 隐私权限设置中找不到 TypeNo
根本原因
macOS 的 App Translocation 机制。当从网络下载或某些方式安装的应用,即使复制到 /Applications,首次双击运行时系统可能仍将其视为"易地"副本,复制到临时路径执行,导致:
- 应用不在预期位置
- 系统权限(麦克风、辅助功能)授权不生效
- coli 引擎可能无法正确定位
解决方法
# 使用终端通过 open 命令启动,不要直接双击
open /Applications/TypeNo.app
正确启动后,Activity Monitor 中路径应为:
/Applications/TypeNo.app/Contents/MacOS/TypeNo
预防措施
如果 Launchpad 中出现重复图标(一个正常、一个是临时副本),将重复的拖到废纸篓删除。
问题三:Node.js v25 与 coli native addon 不兼容
错误现象
TypeNo 运行后提示:
node.js version incompatibility with native addon.
try: npm install -g @marswave/coli --build-from-source
根本原因
@marswave/coli 预编译的 native addon 二进制文件基于较低版本的 Node.js 编译,与 Node.js v25.8.1 不兼容。
解决方法
npm install -g @marswave/coli --build-from-source
从源码编译后,native addon 与当前 Node.js 版本兼容。
安装过程一直报错,最后用hermes全过程重新配置,解决问题。
过程中的问题及解决方法如下:
问题一:Gatekeeper 签名验证失败
错误现象
双击
/Applications/TypeNo.app报错:spctl -av /Applications/TypeNo.app报错:根本原因:从 GitHub 下载的 zip 包解压后,包含了 AppleDouble 文件(
._Info.plist等),这些文件破坏了代码签名的密封验证。解决方法
问题二:App Translocation(应用易地)
错误现象
/Applications双击打开后,Activity Monitor 显示路径为:根本原因
macOS 的 App Translocation 机制。当从网络下载或某些方式安装的应用,即使复制到
/Applications,首次双击运行时系统可能仍将其视为"易地"副本,复制到临时路径执行,导致:解决方法
# 使用终端通过 open 命令启动,不要直接双击 open /Applications/TypeNo.app正确启动后,Activity Monitor 中路径应为:
预防措施
如果 Launchpad 中出现重复图标(一个正常、一个是临时副本),将重复的拖到废纸篓删除。
问题三:Node.js v25 与 coli native addon 不兼容
错误现象
TypeNo 运行后提示:
根本原因
@marswave/coli 预编译的 native addon 二进制文件基于较低版本的 Node.js 编译,与 Node.js v25.8.1 不兼容。
解决方法
从源码编译后,native addon 与当前 Node.js 版本兼容。