跳转到主要内容

标签: apt

  • 为什么 SOW 每个仓库只保留一棵包体树

    Vonng 发布于 设计归档 1516 字 4 分钟

    VonngDesignrepositorypoolrpmaptcompatibilitydecision

    为什么 SOW 每个仓库只保留一棵包体树

    这项决策起草于 2026-08-05 的 v0.2 发布前设计收敛阶段,并在 2026-08-08 随 SOW v0.2.0 正式交付,随后延续为 v0.3 与 v0.4 的布局契约。它记录的是架构选择,不是笼统的兼容性 PASS:协议闭包、普通软件包客户端、镜像工具、静态托管与对象存储始终属于彼此独立的证据层。 最终决策 每个 SOW Repository 只拥有一棵公共树: <repository>/ pool/ # 正典包体 dists/ <dist>/ <architecture>/ # …

    这项决策起草于 2026-08-05 的 v0.2 发布前设计收敛阶段,并在 2026-08-08 随 SOW v0.2.0 正式交付,随后延续为 v0.3 与 v0.4 的布局契约。它记录的是架构选择,不是笼统的兼容性 PASS:协议闭包、普通软件包客户端、镜像工具、静态托管与对象存储始终属于彼此独立的证据层。 最终决策 每个 SOW Repository 只拥有一棵公共树: <repository>/ pool/ # 正典包体 dists/ <dist>/ <architecture>/ # …

  • 平台与集成

    发布于 参考

    Referencerpmdebyumaptobject-storage

    本页说明 SOW 提供哪些构建目标、工作区依赖什么存储语义,以及自动化集成具体覆盖哪些行为。 仓库生成在 SOW 二进制内部完成;部署后的最终门禁仍是实际软件包管理器。 Release 目标 操作系统 amd64 arm64 制品 Linux 是 是 归档、RPM、DEB macOS 是 是 归档 Windows 否 否 不支持 Release 二进制使用 CGO_ENABLED=0,不需要语言运行时。0.4.0 制品使用 Go 1.27.0 构建; 源码 Module 要求 Go 1.27.0 …

    本页说明 SOW 提供哪些构建目标、工作区依赖什么存储语义,以及自动化集成具体覆盖哪些行为。 仓库生成在 SOW 二进制内部完成;部署后的最终门禁仍是实际软件包管理器。 Release 目标 操作系统 amd64 arm64 制品 Linux 是 是 归档、RPM、DEB macOS 是 是 归档 Windows 否 否 不支持 Release 二进制使用 CGO_ENABLED=0,不需要语言运行时。0.4.0 制品使用 Go 1.27.0 构建; 源码 Module 要求 Go 1.27.0 …

  • 签名模型

    发布于 功能

    Featuresigningrpmapt

    客户端会对一个仓库提两个不同的问题,SOW 用两套彼此独立的机制分别回答。把它们混为一谈,是"我明明签了名,dnf 还是报错"这类问题最常见的来源 —— 所以本页先把两者拆开。 两条独立的信任链 元数据签名 RPM 包体签名 回答的问题 “这份索引真是你出的、没被改过吗?” “这个 .rpm 文件真是你出的吗?” 配置项 signing.rpm.metadata、signing.deb.metadata signing.rpm.packages 产出 …

    客户端会对一个仓库提两个不同的问题,SOW 用两套彼此独立的机制分别回答。把它们混为一谈,是"我明明签了名,dnf 还是报错"这类问题最常见的来源 —— 所以本页先把两者拆开。 两条独立的信任链 元数据签名 RPM 包体签名 回答的问题 “这份索引真是你出的、没被改过吗?” “这个 .rpm 文件真是你出的吗?” 配置项 signing.rpm.metadata、signing.deb.metadata signing.rpm.packages 产出 …

  • 仓库签名

    发布于 教程

    Tutorialsigningaptyum

    SOW 提供两条互相独立的签名路径: 路径 产物 客户端开关 RPM 元数据 repodata/repomd.xml.asc repo_gpgcheck=1 APT 元数据 InRelease 与 Release.gpg Signed-By RPM 包体 RPM 内嵌签名 gpgcheck=1 APT 通过签名的 Release 信任包哈希;SOW 不重签 DEB 包体。先配置元数据签名;只有当你负责 这些 RPM 字节的签名策略时,再启用包体签名。 1. 创建专用密钥 下面生成一把无口令的示例 …

    SOW 提供两条互相独立的签名路径: 路径 产物 客户端开关 RPM 元数据 repodata/repomd.xml.asc repo_gpgcheck=1 APT 元数据 InRelease 与 Release.gpg Signed-By RPM 包体 RPM 内嵌签名 gpgcheck=1 APT 通过签名的 Release 信任包哈希;SOW 不重签 DEB 包体。先配置元数据签名;只有当你负责 这些 RPM 字节的签名策略时,再启用包体签名。 1. 创建专用密钥 下面生成一把无口令的示例 …

  • 教程

    发布于 教程

    Tutorialyumaptsigningpublish

    这里的教程都从全新工作区开始。请按顺序执行命令,并按你的环境替换大写占位符与包路径。 如果还没装 SOW,先看安装与快速上手。 下面的教程介绍 Managed 仓库路径。 搭建 YUM 仓库 托管 RPM 仓库:分架构视图、noarch 中性投影、debuginfo 过滤、版本数量上限,以及可用的 dnf 客户端配置。 搭建 APT 仓库 托管 DEB 仓库:Debian 风格包池、by-hash 索引与 deb822 客户端配置。 仓库签名 生成专用 GPG 签名钥,为仓库元数据与 RPM 包 …

    这里的教程都从全新工作区开始。请按顺序执行命令,并按你的环境替换大写占位符与包路径。 如果还没装 SOW,先看安装与快速上手。 下面的教程介绍 Managed 仓库路径。 搭建 YUM 仓库 托管 RPM 仓库:分架构视图、noarch 中性投影、debuginfo 过滤、版本数量上限,以及可用的 dnf 客户端配置。 搭建 APT 仓库 托管 DEB 仓库:Debian 风格包池、by-hash 索引与 deb822 客户端配置。 仓库签名 生成专用 GPG 签名钥,为仓库元数据与 RPM 包 …

  • 搭建 APT 仓库

    发布于 教程

    Tutorialaptdebmanageddist

    本教程从零创建一个 Managed DEB 仓库。你需要一个可写目录,以及一个或多个 DEB 文件。 1. 创建工作区 mkdir -p /srv/sow cd /srv/sow sow init . sow repo new pigsty sow dist new trixie --format deb -r pigsty Dist 名称会成为 APT Suite。它由你定义;SOW 不会根据 trixie 推断发行版语义。 2. 配置成员策略 如果需要过滤或限制版本,编辑生成的 …

    本教程从零创建一个 Managed DEB 仓库。你需要一个可写目录,以及一个或多个 DEB 文件。 1. 创建工作区 mkdir -p /srv/sow cd /srv/sow sow init . sow repo new pigsty sow dist new trixie --format deb -r pigsty Dist 名称会成为 APT Suite。它由你定义;SOW 不会根据 trixie 推断发行版语义。 2. 配置成员策略 如果需要过滤或限制版本,编辑生成的 …