wp-updates
Shared, self-hosted update channel for the wordpress org's WordPress
projects. It is the counterpart to ee-extensions/foh-updates: a plain,
public repo that hosts the update manifests and release payloads that
WordPress installs pull from.
What lives here
Each managed project gets:
{slug}.json— the PUC-compatible JSON manifest (at minimumversionanddownload_url; every other PUC field is optional and enriches the Updates screen / "View details" modal).{slug}/— a directory for that project's release assets (zips, icons, banners, screenshots) referenced by its manifest.
These files are not hand-edited: each project's release CI publishes its manifest and zip here on release.
manifest-updater is the first resident (manifest-updater.json +
manifest-updater/). The channel can host many projects side by side, exactly
like ee-extensions/foh-updates does.
How it's consumed
Projects opt in through their WordPress Update URI: header, pointing at
this repo's raw manifest URL with a #manifest-updater.json fragment, e.g.:
Update URI: https://gitea.mulligan.casa/wordpress/wp-updates/raw/branch/main/manifest-updater.json#manifest-updater.json
The network-activated manifest-updater plugin reads that header, fetches the manifest from here, and surfaces the update through WordPress's native Plugins / Updates screens.
Must remain public
Installed sites fetch manifests and release payloads over unauthenticated
raw/branch/main/... URLs. This repository must stay public — making it
private breaks self-updates for every project that points its Update URI:
here.