跳到主要内容

Vessel

应用打包、安装与更新

把一个应用打成带签名的安装包,负责安装、升级与卸载,并为应用提供应用内更新。PixSee 与 Inkline 的安装器和自动更新都由它驱动。它面向发布软件的开发者,使用上面两款软件不需要另外下载它。

正在获取最新版本…

功能​

  • 单文件安装器

    宿主程序与应用包合成一个可执行文件,双击即是跟随系统明暗的安装向导,每个应用都能用自己的界面替换任一页面。

  • 安装选项齐全

    当前用户或全机安装、自定义目录、开始菜单与桌面快捷方式、加入 PATH、按组件安装,并能识别升级、修复与降级。

  • 失败即回滚

    安装、升级与卸载中途失败时完整回滚,每次操作都留下日志。

  • 签名校验

    包内文件逐个带 SHA-256 摘要,整包 ECDSA P-256 签名;校验失败一律拒绝安装,没有绕过的开关。

  • 应用内更新

    应用接入更新 SDK 即可检查新版本,支持正式与预览通道、断点续传;经 amass.fun 发布网关匿名下载,用户机器上不需要任何令牌。

  • 脚本定制

    用 Lua 脚本定制打包与安装流程,不必为某个应用改动 Vessel;附带 Gitea Actions 发布模板与静默安装命令行。

用法​

静默安装、升级与卸载

不带参数启动即是图形安装向导;带上 --silent 不创建窗口,退出码就是真实结果,适合批量部署与流水线。系统级的静默操作需要先以管理员权限运行。

Vessel.exe --silent --package=application.vsl --accept-license --scope=user
Vessel.exe --silent --update --identifier=com.example.application --package=next-version.vsl
Vessel.exe --silent --uninstall --identifier=com.example.application --scope=user

打包工具 vessel-pack

从打包、签名到生成发布附件,全部经 vessel-pack 的子命令完成,发布流水线模板也只是依次调用它们。

pack执行打包脚本,收集内容,压缩、签名并写出分发包
bundle把分发包追加到宿主可执行文件尾部,产出自解压安装器
meta由自解压安装器与可选的分发包生成元数据附件
verify按宿主同一条路径校验签名与全部条目摘要
inspect打印清单内容与条目表
keygen生成 ECDSA P-256 密钥对并导出
brand给宿主写入项目的图标,产出 pack 与 bundle 要用的宿主(仅 Windows)

发布来源

应用按调用参数、环境变量、配置目录里的 release.json 与安装记录依次确定去哪里检查更新。私有仓库可以经 amass.fun 这类发布网关匿名分发,baseUrl 取网关所在站点的根地址,不需要令牌;也可以直连 Gitea,令牌只放在环境变量或配置文件里。

{
"baseUrl": "https://gitea.example.com",
"owner": "team",
"repository": "application",
"channel": "stable",
"checkIntervalHours": 24
}

下载​

最新版本0.0.0
  • Windows 打包工具vessel-pack:打包、签名与校验00.0 MB
  • Linux 打包工具vessel-pack:打包、签名与校验00.0 MB
  • Windows 安装宿主vessel-host:安装器与更新器的运行时00.0 MB
  • Linux 安装宿主vessel-host:安装器与更新器的运行时00.0 MB

版本历史

正在读取版本历史…