Skip to content

Commit ebb3ec1

Browse files
committed
Document COPR maintainer flow in RELEASING.md
Mirror of the Homebrew/Scoop/AUR sections — the per-release recipe (release-build-copr-rpms + the printed copr-cli build commands) and the one-time setup notes for the COPR project (chroots, build options, the API token file at ~/.config/copr).
1 parent d4c34c6 commit ebb3ec1

1 file changed

Lines changed: 22 additions & 0 deletions

File tree

RELEASING.md

Lines changed: 22 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -56,6 +56,19 @@ git -C ~/qn/qn-bin push
5656

5757
The recipe pulls both Linux gnu sha256 sidecars (x86_64 + aarch64) from the release, renders a `PKGBUILD` + `.SRCINFO`, and stages them. Push goes to `ssh://aur@aur.archlinux.org/qn-bin.git` — the AUR's git remote.
5858

59+
### COPR
60+
61+
Build per-arch RPMs from the release, then upload each via `copr-cli`:
62+
63+
```fish
64+
just release-build-copr-rpms X.Y.Z
65+
# prints the exact `copr-cli build quicknode/qn <path>` commands to run
66+
copr-cli build quicknode/qn target/x86_64-unknown-linux-gnu/generate-rpm/qn-X.Y.Z-1.x86_64.rpm
67+
copr-cli build quicknode/qn target/aarch64-unknown-linux-gnu/generate-rpm/qn-X.Y.Z-1.aarch64.rpm
68+
```
69+
70+
Each `copr-cli build` dispatches the upload + build to COPR's infrastructure asynchronously; check progress at <https://copr.fedorainfracloud.org/coprs/quicknode/qn/>. Requires `copr-cli` installed (`pip install copr-cli` or `dnf install copr-cli` on Fedora) and `~/.config/copr` configured with the COPR API token.
71+
5972
## One-time setup notes
6073

6174
A few channels needed manual setup the first time. Captured here so the next maintainer doesn't have to rediscover them.
@@ -98,6 +111,15 @@ The first push registers the package on the AUR. Subsequent pushes just update i
98111

99112
After publishing: confirm via `https://aur.archlinux.org/packages/qn-bin` (the RPC at `/rpc/v5/info` can lag the package page by a few minutes — trust the web page, not the RPC, for fresh registrations).
100113

114+
### COPR (`quicknode/qn`)
115+
116+
Maintainer needs a Fedora account at <https://accounts.fedoraproject.org> and a COPR project `quicknode/qn` created at <https://copr.fedorainfracloud.org>. Project settings to set on creation:
117+
118+
- **Chroots**: current Fedora releases + EPEL 9 (covers RHEL 9, Rocky 9, Alma 9). Skip EPEL 8 unless requested — its glibc is too old for our gnu binaries.
119+
- **Build options**: leave defaults; we upload prebuilt RPMs rather than letting COPR rebuild from source.
120+
121+
Generate an API token at <https://copr.fedorainfracloud.org/api/> and save it to `~/.config/copr`. The token contents are pasted in verbatim — the file format is documented on the API page.
122+
101123
## Recovery: a publish channel failed
102124

103125
If a single publish-* job in `release.yml` fails (e.g. crates.io rejected the publish because the token expired), the rest of the release is still good — the GitHub Release, attestations, and other channels remain published.

0 commit comments

Comments
 (0)