Linux 主机上最省事的一条路径:SOW 已收录进 Pigsty infra 软件源,sow 与主机上其它软件包一起用 APT / YUM 安装和升级。中国大陆可使用 repo.pigsty.cc 镜像。
sudo tee /etc/apt/sources.list.d/pigsty-infra.list > /dev/null <<'EOF'
deb [trusted=yes] https://repo.pigsty.io/apt/infra generic main
EOF
sudo apt update
sudo apt install -y sow
sudo tee /etc/yum.repos.d/pigsty-infra.repo > /dev/null <<'EOF'
[pigsty-infra]
name=Pigsty Infra for $basearch
baseurl=https://repo.pigsty.io/yum/infra/$basearch
enabled=1
gpgcheck=0
module_hotfixes=1
EOF
sudo dnf makecache
sudo dnf install -y sow
# Same paths, different host: repo.pigsty.io -> repo.pigsty.cc
# APT
sudo sed -i 's|repo.pigsty.io|repo.pigsty.cc|' /etc/apt/sources.list.d/pigsty-infra.list
sudo apt update
# YUM
sudo sed -i 's|repo.pigsty.io|repo.pigsty.cc|' /etc/yum.repos.d/pigsty-infra.repo
sudo dnf makecache
适用于离线交付或需要逐级晋级的流水线。安装包带 1PGSTY 发布后缀,把可执行文件 装到 /usr/bin/sow,并随包安装 Apache-2.0 许可证与第三方许可声明。
RPM / DEB
ARCH=$(uname -m)
curl -fLO "https://github.com/pgsty/sow/releases/download/v0.5.0/sow-0.5.0-1PGSTY.$ARCH.rpm"
sudo rpm -Uvh "sow-0.5.0-1PGSTY.$ARCH.rpm"
ARCH=$(dpkg --print-architecture)
curl -fLO "https://github.com/pgsty/sow/releases/download/v0.5.0/sow_0.5.0-1PGSTY_$ARCH.deb"
sudo apt install "./sow_0.5.0-1PGSTY_$ARCH.deb"
面向 Linux 与 macOS 的免安装器二进制,覆盖 amd64 与 arm64,适合 CI、macOS 工作站,以及由你自己决定安装路径的主机。每个归档包含 sow 可执行文件、 README.md、CHANGELOG.md、Apache-2.0 LICENSE 与 THIRD_PARTY_NOTICES。不提供 Windows 构建。
# Swap linux_amd64 for linux_arm64, darwin_amd64, or darwin_arm64.
curl -fLO https://github.com/pgsty/sow/releases/download/v0.5.0/sow_0.5.0_linux_amd64.tar.gz
tar -xzf sow_0.5.0_linux_amd64.tar.gz
sudo install -m 0755 sow /usr/local/bin/sow
sow version
curl -fLO https://github.com/pgsty/sow/releases/download/v0.5.0/sow_0.5.0_darwin_arm64.tar.gz
tar -xzf sow_0.5.0_darwin_arm64.tar.gz
mkdir -p ~/.local/bin
install -m 0755 sow ~/.local/bin/sow
sow help
自行构建对应 Tag。模块声明 Go 1.27.1,生成元数据不需要 C 工具链;下面就是 Release Pipeline 使用的构建参数,因此源码构建与官方发布报告相同的产品版本。
源码构建
git clone https://github.com/pgsty/sow.git
cd sow
git checkout v0.5.0
CGO_ENABLED=0 go build -trimpath \
-ldflags="-s -w -X github.com/pgsty/sow/internal/v2cli.Version=0.5.0" \
-o sow ./cmd/sow
sudo install -m 0755 sow /usr/local/bin/sow
每个归档、RPM 与 DEB 的准确 SHA-256 摘要都记录在该 Release 的 SHA256SUMS 中。 安装前随制品下载此文件,并校验对应条目,确保文件名与 Release 版本一致。
SHA256SUMS
ASSET=sow_0.5.0_linux_amd64.tar.gz
curl -fLO https://github.com/pgsty/sow/releases/download/v0.5.0/SHA256SUMS
# Linux
grep " $ASSET$" SHA256SUMS | sha256sum -c -
# macOS
grep " $ASSET$" SHA256SUMS | shasum -a 256 -c -