New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Add the new artifacts tag to releases
#217
Comments
|
Firmware is |
|
@hughsie The platform would either be not set, or |
|
Would it be useful to distinguish between a permalink to "the latest AppImage in the beta channel for x86_64" vs. a deep link to "the AppImage for version 1.2.3 for x86_64"? I guess what I am asking for is a way to specify artifacts without specifying a particular release to attach them to, but rather a "channel" (such as continuous, nightly, alpha, beta, release, lts, oldstable, etc). My use case: On https://appimage.github.io/ we are using AppStream files shipped inside AppImages to enrich the "product detail pages", e.g., with buttons to the download page. Right now we can't have a button "download beta", "download continuous" or such; having this possibility would be useful. Constraint is that we can't track each build of each app, as this would generate way too much polling. We never know when an upstream author puts out yet another (continuous) build. |
There would never be a "latest" link, because the artifacts are tied to a component release (which has a version number).
AppStream supports release types, so you could have a (perpetual?) release of |
Currently, we have the need to add references to release artifacts to releases, both for firmware as well as for Flatpaks and other bundled application which need to make the source code location they were building from known for the current release.
Traditionally, we had the
locationtag for that, which was only ever used byfirmwaretype components and was accompanied by thechecksumtags to denote the release checksums for the given release artifact.When having source tarballs in there as well and potentially more and different release artifacts, the current approach will not work anymore.
(Ab)using the
<url/>tag for this purpose is not a good idea, as the url tag points to human-readable webpages in its current context, and not to immediately downloadable artifacts. We also can not easily add checksums to this tag.So, I propose the
artifactstag as child of the<release/>tag. This mechanism will displace the currentlocationandchecksumtags as briefly described in https://www.freedesktop.org/software/appstream/docs/sect-Metadata-Firmware.html#tag-firmware-releases (of course with a very, very long backwards compatibility phase).This is the proposed layout:
Constrains:
locationchildsourceorbinaryare allowed)platformproperty is optionalchecksumchildrenartifactstag itself is an optional tag in areleasegroup.locationtag must point to a direct download location (not some website) of a tarballplatformproperty ofartifactmust be a platform triplet for Linux/*BSDTo think about:
typeto denote whether the downloaded artifact is an appimage/snap/tarball/etc.? (This would cover things discussed in Add release download URLs to metainfo files? #154 as well)The text was updated successfully, but these errors were encountered: