面向 Go 项目的发布自动化工具,负责构建、打包并发布二进制文件到 GitHub 及各类包管理与镜像仓库。
jdx/packslip
一种签名的发布清单,让安装器和包管理器能验证并选出适合当前系统的二进制产物。
- Star
- 198
- Fork
- 5
- 未关闭 Issue
- 1
- 最近提交
- 昨天
这是什么?
packslip 是一种签名发布清单,适用于以压缩包、安装程序或可执行文件形式分发的软件。每次发布时,除产物本身外还会附带一个文件 packslip.sigstore.json。安装器、包管理器或镜像站点会用项目的签名者验证这个清单,然后确定适合当前主机的产物、可执行文件在压缩包内的位置,以及下载内容必须匹配的摘要值。这样就不必根据文件名猜测,也不必信任与二进制文件放在一起的校验和文件。
项目提供 GitHub Action,使用工作流自身的身份对产物摘要、平台和可执行文件路径进行签名,无需长期保存的签名密钥。命令行工具可用于发布、验证和安装发布版本。packslip install 会获取工具的签名发布、安装完整压缩包,并把声明的命令放入 bin 目录,过程中不运行下载的代码,可替代 curl | sh 的安装方式。
核心功能
- 01发布经签名的清单,将产物与平台及可执行文件路径对应起来。
- 02通过 packslip verify 按清单中的摘要校验发布产物。
- 03用 packslip install 从 GitHub 或域名项目安装工具,安装过程不执行下载的代码。
- 04在 GitHub Actions 中使用工作流身份签名,无需长期保存的签名密钥。
- 05格式声明在版本 1 上保持稳定。
适用场景
- 发布命令行工具,让用户可以验证安装,而不是用 curl | sh 执行脚本。
- 开发需要为各平台选择正确二进制文件的安装器或包管理器。
- 让镜像站或内部工具检查下载的发布产物是否可信。
- 在项目现有的基于标签触发的 CI 发布任务中加入签名发布验证。
快速上手
- 1
按安装指南安装 packslip
- 2
从已签名的发布版本安装工具
packslip install github.com/jdx/hk
使用前须知
- 命令行工具没有升级、列出或卸载命令。
- 安装 packslip 本身需要按单独的安装指南操作,README 没有提供单一安装命令。
标签
#supply-chain-security#release-engineering#code-signing#sigstore#github-actions#binary-distribution#installer#rust
常见问题
- packslip 是什么?
- 一种签名的发布清单,让安装器和包管理器能验证并选出适合当前系统的二进制产物。 packslip 是一种签名发布清单,适用于以压缩包、安装程序或可执行文件形式分发的软件。每次发布时,除产物本身外还会附带一个文件 packslip.sigstore.json。安装器、包管理器或镜像站点会用项目的签名者验证这个清单,然后确定适合当前主机的产物、可执行文件在压缩包内的位置,以及下载内容必须匹配的摘要值。这样就不必根据文件名猜测,也不必信任与二进制文件放在一起的校验和文件。
- packslip 可以免费使用吗?用的什么许可证?
- packslip 以 MIT 许可证开源。用于商业产品前,请先确认许可证条款。
- packslip 还在维护吗?
- 活跃维护中。packslip 最近一次提交是在 2026年11月6日。
- packslip 适合用来做什么?
- 发布命令行工具,让用户可以验证安装,而不是用 curl | sh 执行脚本。 开发需要为各平台选择正确二进制文件的安装器或包管理器。 让镜像站或内部工具检查下载的发布产物是否可信。 在项目现有的基于标签触发的 CI 发布任务中加入签名发布验证。
- packslip 怎么安装和运行?
- 按安装指南安装 packslip 从已签名的发布版本安装工具: packslip install github.com/jdx/hk
- 在哪里获取 packslip?
- 源代码和安装说明在 GitHub 上:https://github.com/jdx/packslip
概要由 AI 根据项目 README 生成;GitHub 数据每日更新。
相关项目
1.6万+12 本周1139GoMIT维护活跃更新于 前天
面向 GitHub Actions runner 的 CI/CD 安全代理,监控出站网络、文件写入和进程行为,用于发现供应链攻击。
1296+3 本周126TypeScriptApache-2.0更新于 昨天
一款 GitHub CLI 扩展,将工作流使用的所有 Action 锁定到确切提交并校验锁文件。
300+1 本周22GoMIT维护活跃更新于 前天
跨平台桌面应用,用个人 Apple 账号为 iOS、iPadOS 和 tvOS 应用签名并侧载到设备上。
3746+60 本周269RustMIT维护活跃更新于 14天前
面向 AI 智能体的内核级沙箱与安全运行时,管控工具调用、凭证、网络和文件变更。
4876+109 本周327RustApache-2.0更新于 昨天
一款 Ruby 命令行工具,用于自动化 iOS 和 Android 应用的构建、截图、签名与发布。
4.2万+41 本周6054RubyMIT维护活跃更新于 24小时前