gen-ldflags injected -X cmd.GOPATH / cmd.GOROOT from the builder's environment, baking absolute paths like /Users/<user>/go into every released binary. That defeats -trimpath and makes the build unreproducible: a third party rebuilding the same tag gets different bytes and cannot verify checksums.txt. The values only seed logger.Init's source-path trim list, and under -trimpath the binary's paths are already relative, so there is no build-machine prefix left to trim - the trim list also still gets runtime.GOROOT() and build.Default.GOPATH at run time. Dropping the two stamps changes no observable logging behaviour; cmd.GOPATH/GOROOT keep the empty defaults a plain go build leaves. Verified: gen-ldflags output no longer contains cmd.GOPATH/GOROOT; a -trimpath release build has zero occurrences of the builder path (was 1); Version, ReleaseTag and CommitID stamps are intact. Co-authored-by: Claude <noreply@anthropic.com>
A conservatively maintained MinIO fork
Security maintenance, versioned release artifacts, and operational continuity for existing deployments.
Website · Documentation · Download · Blog · Releases · Security · 中文
Important
Silo is an independent, community-maintained fork of the open-source MinIO server, published by Pigsty from
pgsty/minio. It is not affiliated with, endorsed by, or sponsored by MinIO, Inc. “MinIO” is used only to identify the upstream project and compatibility lineage.
Overview
Silo maintains one downstream release line based on MinIO RELEASE.2025-12-03T12-00-00Z. It provides maintained builds and release artifacts for existing MinIO-compatible deployments after upstream community distribution ended. Pigsty uses this fork for object storage as an optional PG backup repo.
The official project portal is silo.pgsty.com. It brings documentation, downloads, release and security notes, and project background together. English is served at the site root; Chinese is available under /zh/.
Find the Right Resource
| Looking for | Canonical location |
|---|---|
| Project overview and navigation | Silo Website (中文) |
| Installation methods and downloads | Download & Install (中文) |
| Operations, administration, development, and reference | Documentation (中文) |
| Project news, release notes, and security notes | Blog, including releases and security |
| Versioned binaries, checksums, and source archives | GitHub Releases |
| Bug reports and feature discussions | GitHub Issues |
| License, attribution, and trademark information | License, Attribution, and Trademark |
Maintenance Policy
The active release line covers:
- build and dependency maintenance;
- applicable security fixes and advisories;
- focused fixes for reproducible defects;
- versioned binaries, packages, checksums, and multi-architecture images;
- the web console, client, documentation, and Pigsty integration.
Changes are kept narrow and tested where practical. Maintenance is best effort; no response, remediation, or release schedule is guaranteed.
Out of scope
- a separate product roadmap, new storage engine, or speculative S3 features;
- broad rewrites or changes that materially expand the downstream delta;
- historical releases or multiple support branches;
- commercial support, SLAs, 24×7 coverage, or SUBNET access;
- deployment design, access control, monitoring, backup, or recovery.
Compatibility
Silo aims to preserve:
- MinIO-compatible S3 APIs, configuration, environment variables, and CLI conventions;
RELEASE.YYYY-MM-DDTHH-MM-SSZtags, container entrypoints, and common deployment workflows.
Compatibility is the default constraint. Silo preserves existing wire, client, configuration, and operational behavior whenever doing so remains safe. Compatibility is broken only when necessary to close a major security issue, and the release notes must identify the affected behavior and migration path. Treat each release as a downstream upgrade: pin versions, review release notes and security advisories, keep a rollback path, and test before production use.
Downloads and Release Artifacts
Use Download & Install to choose an installation method. GitHub Releases remains the source for versioned server binaries, checksums, and source archives.
| Artifact | Location |
|---|---|
| Source | github.com/pgsty/minio |
| Container image | pgsty/minio, multi-arch for linux/amd64 and linux/arm64 |
| Server binaries and checksums | GitHub Releases for Linux, macOS, and Windows on amd64 and arm64 |
| Linux packages | RPM, DEB, and APK artifacts, also distributed through the Pigsty repository |
| Client | pgsty/mc, bundled in the container as mcli with an mc compatibility alias |
| Console | Maintained georgmangold/console fork, embedded in the server build |
| Shared library | pgsty/silo-pkg v3.7.0, consumed through a replace directive while preserving github.com/minio/pkg/v3 import paths (release notes) |
Quick Start
For local evaluation:
mkdir -p data
export MINIO_ROOT_USER=minioadmin
export MINIO_ROOT_PASSWORD=change-me-long-password
docker run -d --name silo \
-p 9000:9000 \
-p 9001:9001 \
-e MINIO_ROOT_USER \
-e MINIO_ROOT_PASSWORD \
-v "$PWD/data:/data" \
pgsty/minio:latest server /data --console-address ":9001"
Open the console at http://localhost:9001; the S3 API listens on http://localhost:9000.
The image includes the compatible client as mcli:
docker exec silo mcli alias set local http://127.0.0.1:9000 \
"$MINIO_ROOT_USER" "$MINIO_ROOT_PASSWORD"
docker exec silo mcli mb local/demo
docker exec silo mcli ls local
Warning
For production, pin a release, use unique credentials and TLS, monitor the service, keep independent backups, and test recovery.
Build the server from source:
go build -o minio .
./minio --version
For other installation paths—including native packages, binaries, Podman, Kubernetes, source, and Pigsty Ansible—use Download & Install. For production deployment and administration, start with the Silo documentation. Pigsty users can also use the Pigsty MinIO module.
Security
Security fixes target the active master branch and are recorded in the advisory log and the portal's security notes. Report vulnerabilities privately as described in SECURITY.md and VULNERABILITY_REPORT.md. Report issues that also affect upstream MinIO there as well.
Contributing
Useful contributions include security and dependency updates, reproducible bug fixes, tests, release automation, packaging, and documentation.
Issues and pull requests should include the affected version, reproduction steps, impact, expected behavior, tests, and compatibility notes. Discuss large changes in an issue first.
Background
This project was created in response to changes in the upstream community distribution and maintenance model. The maintainer’s analysis, alternatives considered, and early maintenance record are documented below:
| Essay | Subject |
|---|---|
| MinIO Is Dead | Changes to the upstream project and distribution model |
| MinIO Is Dead, Long Live MinIO | Establishing the fork and its release pipeline |
| Two months into maintaining a MinIO fork | Initial security and maintenance work |
License and Trademark
The server remains licensed under the GNU Affero General Public License v3.0. See CREDITS for upstream authorship and attribution. MinIO is a trademark of MinIO, Inc. Silo and pgsty/minio are independent community efforts and are not affiliated with or endorsed by MinIO, Inc.