下载与安装

获取 SOW 二进制:预编译发行版、源码构建,以及支持的平台矩阵。

SOW 是一个静态可执行文件。没有安装器,没有要装的软件包,没有要启用的服务, 在你第一次运行需要状态的命令之前,它甚至不会创建任何目录。安装它 = 把一个文件 放进 PATH

预编译二进制

各平台的发行归档发布在 GitHub Releases。 下载与你的操作系统和 CPU 匹配的归档,解压后放到位:

tar -xzf sow_*.tar.gz
sudo install -m 0755 sow /usr/local/bin/sow

没有 root 也没关系,~/.local/bin 一样能用 —— SOW 自身的运行从不需要提权。

平台矩阵

二进制以 CGO_ENABLED=0 构建,不依赖 libc,在对应操作系统与 CPU 家族的现代内核上 都能直接运行。

操作系统amd64arm64说明
Linux支持支持主要目标平台
macOS(Darwin)支持支持Intel 与 Apple Silicon
Windows不支持

不支持 Windows 是有意为之:SOW 依赖 POSIX 建议锁、硬链接与原子 rename。 同样的原因,请把仓库放在本地 POSIX 文件系统上 —— NFS 等网络文件系统无法提供它 所依赖的锁与持久化语义。

源码构建

唯一的构建依赖是 Go 工具链,项目要求 Go 1.26 或更高版本。

git clone https://github.com/pgsty/sow.git
cd sow
CGO_ENABLED=0 go build -trimpath -o sow ./cmd/sow

因为没有 cgo,交叉编译不需要除 Go 之外的任何工具链:

CGO_ENABLED=0 GOOS=linux GOARCH=arm64 go build -trimpath -o sow-linux-arm64 ./cmd/sow

验证安装

sow version
sow 0.2.0-dev darwin/arm64 go1.26.5

这行输出依次是 SOW 版本、二进制的目标平台,以及构建它的 Go 工具链版本。 sow --version 输出同一行内容,sow help 则列出完整命令树。

你不需要安装的东西

生成仓库元数据的全过程不会调用外部程序:SOW 自己解析 RPM 头与 Debian control 文件, 自己算校验和,在进程内写出 repodata/PackagesRelease —— 从不调用 createrepo_cdpkg-scanpackagesreprepromodifyrepo_c

只有两个可选功能会用到环境中的外部工具:RPM 包签名需要 rpm 与可用的 GPG 环境, agent:// 形式的密钥引用需要正在运行的 gpg-agent。其余能力(包括 file://env:// 的元数据签名)都在二进制内部完成。细节见安装

下一步

  • 快速上手 —— 五分钟把一个装包的目录变成可服务的仓库。
  • 第一个工作区 —— 搭一个可筛选、多架构的托管仓库。
  • 兼容性 —— 实测客户端矩阵。
最后修改:2026-08-08: init commit (fe725aa)