ci: add RPM packaging for Keyguard - #1516
Open
YoannDev90 wants to merge 5 commits into
Open
Conversation
Contributor
|
All contributors have signed the CLA ✍️ ✅ |
Add rpmbuild spec plus a workflow_dispatch job that builds the .desb and .rpm packages from the desktop distribution tarball. The RPM places the launcher in /opt/keyguard/bin/Keyguard and installs a /usr/bin/keyguard symlink pointing at it. The spec explicitly restores the executable bit on the launcher because Gradle's Tar task does not preserve file permissions, and the symlink targets the launcher under bin/ rather than the image root.
YoannDev90
force-pushed
the
feat/rpm-packaging
branch
from
August 9, 2026 08:58
c9fccd4 to
abeb25b
Compare
Author
|
recheck |
Author
|
I have read the CLA Document and I hereby sign the CLA |
Owner
|
Please follow the existing convention for naming the workflow files. I would also expect that MOST important part would be having this as a part of the release workflow, not as a separate action. Also, please more the packaging into desktopApp/ similarly to existing flatpak files. |
Address review feedback on AChep#1516: - Remove the standalone build_packages.yml workflow (out of the existing check_/new_/update_ naming convention) and run the .deb and .rpm packaging as part of the build-linux-app job in new_tag_release.yaml instead. - Move packaging/keyguard.spec to desktopApp/rpm/keyguard.spec so the packaging lives next to the existing desktopApp/flatpak files. - Upload the .deb/.rpm for both x86_64 and aarch64 and publish them with the GitHub release artifacts.
Author
|
Addressed the review feedback:
|
Author
|
@AChep Hey I fixed the PR last week, and got no updates, can you re-review please ? |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Adds RPM packaging that was previously missing from this repository, folded into the existing release workflow.
desktopApp/rpm/keyguard.spec— rpmbuild spec that packs the desktop distribution tarball into/opt/keyguard, creates a/usr/bin/keyguardsymlink, and installs the.desktopentry, icon, and metainfo. Lives next to the existingdesktopApp/flatpakpackaging.new_tag_release.yaml— thebuild-linux-appjob now also produces the.deband.rpmfrom:desktopApp:packageReleaseDistributable/:desktopApp:packageReleaseDebfor bothx86_64andaarch64, anddistpublishes them with the GitHub release.The standalone
build_packages.ymlworkflow was removed.Notable details
/opt/keyguard/bin/Keyguard) because Gradle'sTartask does not preserve file permissions and the launcher otherwise lands in the package with mode644, makingkeyguardfail with "not an executable file"./opt/keyguard/bin/Keyguard(the jpackage image layout) rather than the image root.rpmbuild -ba desktopApp/rpm/keyguard.specfrom the release tarball, using the version fromgenerate-versions.Verification
keyguardlaunches.