libchewing icon indicating copy to clipboard operation
libchewing copied to clipboard

Automatically generate DEB and RPM packages for testing

Open hiunnhue opened this issue 1 year ago • 3 comments

Is your feature request related to a problem? Please describe. Describe the solution you'd like

Is it possible to configure GitHub Actions or another method to automatically generate DEB and RPM packages for testing purposes? This would allow users to easily install them for testing, eliminating the need for manual builds (and potentially resolving build errors) on their machines.

As I recall, libchewing used to have an Ubuntu PPA that automatically generated the latest DEB package for users after each commit or when a beta version was released.

hiunnhue avatar May 17 '24 04:05 hiunnhue

I was thinking about that too. With CMake we can easily generate binary packages, they will not be compliant with distro standards though. So we should warn about that.

Do you want to have per release binary or per commit? Which is more useful?

kanru avatar May 17 '24 04:05 kanru

I am not sure about this ... but would it be inefficient to generate binary packages for every commit, especially considering minor changes like typo fixes or documentation updates?

Perhaps we could automate binary package generation for tags (like Alpha, Beta, RC, etc.) and allow for manual triggering on specific commits when necessary, namely, when you would like to call for testers.

Alternatively, we could implement scheduled builds (daily or weekly) that run whenever there's a new commit. This might also be useful for bug triage, as there wouldn't be too many commits between builds.

Unlike PPAs, problematic packages are immediately pushed to users via PPAs. This allows users (volunteers) to immediately report any errors they encounter.

hiunnhue avatar May 17 '24 12:05 hiunnhue

Sure, I can attach binary packages for tagged releases.

We can also setup weekly builds, though I'm not sure if we will have that many changes 😅

kanru avatar May 17 '24 13:05 kanru