Thank you for volunteering to maintain a builds.sr.ht image! Here are some tips on how to do it well. Your responsibilities are:
When a new version of your distribution is released upstream, you should prepare a patch for builds.sr.ht which makes the new version available to SourceHut users. You must test new image versions.
To test new versions, create a clone of builds.sr.ht with the patch applied on git.sr.ht, then update your image's build.yml file to point to your git repository, and remove the deploy task. Submit this build to builds.sr.ht to test-build your new image version from an earlier version which is already available, and address any problems that arise during testing.
If you use symlinks (e.g. for the "latest" version of your distribution), submit separate patches to add new images and to update symlinks, so that we can build the named image (e.g. "debian/trixie") before we update the symlinks (so that "debian/latest" doesn't point to a yet-to-be-deployed trixie image).
Submit your patch(es) to sr.ht-dev, including at least the following:
We remove distribution releases from SourceHut once they are deprecated by upstream, following a 2-week notice period for anyone who has used the deprecated image within the 30 days prior to its deprecation.
To remove a deprecated release for your distribution, prepare patches according to the following criteria:
We will apply patches which update any symbolic links, update the compatiblity matrix, then email affected users and wait to apply the patch removing the named release until the 2-week notice period expires.
To introduce a new distribution or operating system, you need to prepare a patch for builds.sr.ht which updates the images/ directory appropriately. This should include a "functions" file, which gives the build workers information on how to boot your image; a "genimg" script which, when run from within your target operating system, produces the image as a qcow2 file; and a build manifest which will automate this process.
It is recommended that you reference existing build images to get an idea of how the system can be applied to your target.
Submit your patch to sr.ht-dev and include the following:
contrib/crontab which adds your image to the rebuild schedule.
You are strongly advised to set up a local instance of builds.sr.ht for testing against; we will have very little patience for reviewing untested patches of this scale.