Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
deb: fix version to allow for distro upgrades
The existing version format for our packages use `distro-codename` in the version. Unfortunately, `codename` cannot be used to compare versions, which means that when a user upgrades their distro to a new version, the package won't be updated until a new release happens. This patch changes the format of the version to include `VERSION_ID`, which is numeric, and can be used in version comparison. While we're making changes, this also adds an extra `pkgRevision` number in the version, which can allow us to do a new build/release of a package in between upstream releases. This version is not yet configurable (which can be changed in future). Resulting packages are now formatted as; - name of the package (e.g., "docker-ce") - version (e.g., "22.10.6~beta.0") - "-0" (mostly "best practice", and allows updating for specific situations) - distro (e.g., "ubuntu") - VERSION_ID (e.g. "22.04" or "11") this must be "sortable" to make sure that packages are upgraded when upgrading to a newer distro version ("codename" cannot be used for this, as they're not sorted) - pkgRevision (usually "0", see above) - SUITE ("codename"), e.g. "jammy" or "bullseye". This is mostly for convenience, because some places refer to distro versions by codename, others by version. we prefix the codename with a tilde (~), which effectively excludes it from version comparison. Note that while the `${EPOCH}${EPOCH_SEP}` is part of the version, it is not included in the package's *filename*. Examples: docker-ce_22.10.6~beta.0-0~debian.11.0~bullseye_amd64.deb docker-ce_22.10.6~beta.0-0~ubuntu.22.04.0~jammy_amd64.deb Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
- Loading branch information