BamZap — 包管理器
BamZap
Soup 伴生孵化项目:内容寻址对象池 + 后量子签名(soupq)+ HTTPS 分发 + 声明式部署(HetuFile)。
半独立于 Soup:一个 bamzap.sar 即完整客户端,仅需 soupx(+ soup55b.dll)运行,soupmake 构建。
下载
bamzap.sar 由 soupmake 构建(源码 tools/soupkg/bamzap-client-1.4.0/)。运行时仅需 soupx + soup55b.dll。
# 构建(源码目录内)
soupmake # 打包 bamzap.sar
# 运行
soupx bamzap.sar --help
快速开始
soupx bamzap.sar keygen myorg
soupx bamzap.sar trust add <fp> "myorg release key"
export SOUPKG_SIGN_ID=myorg
soupx bamzap.sar pool register myapp ./myapp/
soupx bamzap.sar verify myapp
soupx bamzap.sar bare run myapp Alice
能力
- 内容寻址对象池(sha256,跨版本去重)
- content-defined chunking(平均 ~1MiB,断点下载)
- 后量子签名 soupq(SPHINCS+ 风格,底层 SM3)
- deny-by-default 信任库
- HTTPS 对象空间分发(curl,凭据走环境变量)
- HetuFile.sml 声明式部署 + LanTuFile.sml 构建配置
别名
sk= bamzapsoupkg= bamzap(兼容旧名)
子命令速查
| 子命令 | 用法 | 说明 |
|---|---|---|
pool register |
<name> <file|dir> |
注册/发新版(内容寻址 + 写 ref) |
pool list / info |
— | 列 ref / 池信息 |
pool gc |
[--prune-unreachable] [--exec] |
回收孤儿对象 |
pool remote |
add/push/fetch | git|cos|lore|https 后端 |
ref log / rollback / restore |
<name> [<hash>] |
版本历史 / 回滚 / 恢复 |
run / bare |
run|link|copy|run | 容器或裸机运行/落地 |
verify |
<name> [--remote] |
真实签名链(deny-by-default) |
keygen / sign / trust |
— | 密钥 / 签名 / 信任库 |
apply |
<HetuFile.sml> |
声明式执行 |
sar install |
<file.sar> |
包安装入池 |
声明式部署(HetuFile.sml)
pool greeter {
source: "./greeter-v2.soup"
register: true
}
remote origin {
backend: "https"
root: $env.SOUPKG_HTTPS_ROOT
}
deploy app {
ref: "greeter"
target: "./deploy/"
mode: "copy"
run_args: "Alice"
}
verify greeter {
chain: true
}
soupx bamzap.sar apply HetuFile.sml
SML 关联
BamZap 的声明式部署文件 HetuFile.sml 与构建配置 LanTuFile.sml 都用 SML(SNOWARE Markup Language)书写。
仓库
- 源码:gitee.com/snoware/bamzap
- 许可证:MulanPSL-2.0