flameshot icon indicating copy to clipboard operation
flameshot copied to clipboard

RPM from GitHub Actions doesn't include a build number in the version

Open pointydev opened this issue 7 months ago • 2 comments

Flameshot Version

Flameshot v12.1.0 (7eb5627e) Compiled with Qt 5.15.15

Installation Type

Using the ready-made package from Github Releases

Operating System type and version

Fedora Linux 42

Description

The RPMs available from GitHub Actions don't include a date or build hash, meaning installing is technically a downgrade from the version available from Fedora repos since the Release field from Actions is 1, but on the Fedora package is 8 due to the bumps as a result of Fedora mass rebuilds. I suggest including such information in the version string so that DNF recognises a newer build.

I would suggest a version string such as version^datetime.revision, such as 12.1.0^20250502115357.7eb5627e, see here for other formats accepted by DNF.

Additionally, Fedora 42 is now released, meaning Fedora 40 will be EOL in just over a week from now, so you may want to consider updating your workflow file to account for this.

Steps to reproduce

  1. Install Flameshot from Fedora repos using dnf install flameshot (right now this is flameshot-0:12.1.0-8.fc42.x86_64)
  2. Install one of the RPMs from GitHub Actions (such as flameshot-0:12.1.0-1.fc41.x86_64, notice the number after 12.1.0 which denotes the Release being lower)
  3. Observe that DNF notes this is a downgrade
  4. Additionally, after installing the "downgrade", note that every time dnf upgrade is run after this, DNF will attempt to install the "updated" version from Fedora repos unless it is suppressed (e.g. using dnf versionlock or --exclude)

Screenshots or screen recordings

No response

System Information

OS: Fedora Linux 42 (KDE Plasma Desktop Edition) x86_64
Display: 1920x1080 @ 144Hz, 1920x1080 @ 144Hz, 1920x1080 @ 144Hz
DE: KDE Plasma 6.3.4
WM: KWin (X11)
dnf5 version 5.2.13.1

Thanks, Elliott

pointydev avatar May 03 '25 18:05 pointydev

Thanks for pointing this out. I've just updated the CI to build with 41/42 instead of 40/41. Would you be willing to make the change to add the version number?

I mostly like having all the distro's in our CI to make sure we don't add a feature that is incompatible with the distro's libraries, and its a nice convenience that we can provide the .rpm's and .deb's. I'm not at all an expert on all the different package format's, so if you have some rpm experience I would appreciate the assist :)

borgmanJeremy avatar May 10 '25 22:05 borgmanJeremy

Thanks for updating the CI, appreciated. While I'm not the best with actually writing spec files, the third party repo Terra just added a nightly package for Flameshot that implements some best practices (such as separating out terminal completions) which seems like something that could be adapted. It'd just need a way to update the globals inside Actions (and maybe replace the date with datetime and revert the name since this is CI, not nightly).

pointydev avatar May 11 '25 18:05 pointydev