AppImage builds + fix false-positive in the anti-cheat + fix opening encrypted files.#19
Conversation
(For example, plasma panel colorizer needs gdbus running for some reason).
|
Note Reviews pausedIt looks like this branch is under active development. To avoid overwhelming you with review comments due to an influx of new commits, CodeRabbit has automatically paused this review. You can configure this behavior by changing the Use the following commands to manage reviews:
Use the checkboxes below for quick actions:
📝 WalkthroughWalkthroughSwitches packaging from Debian/tarball to AppImage artifacts across CI and release scripts; build scripts now use linuxdeploy to produce Qt and WebKitGTK AppImages; README updated for AppImage usage; Changes
Sequence Diagram(s)sequenceDiagram
participant CI as CI workflow
participant Builder as build script (scripts/build-release.sh)
participant LinuxDeploy as linuxdeploy + plugins
participant Artifacts as dist/*.AppImage
participant GitHub as GitHub Release
CI->>Builder: invoke build-release (Qt build)
Builder->>LinuxDeploy: assemble AppDir, run linuxdeploy --plugin qt
LinuxDeploy->>Artifacts: emit package-qt-x86_64.AppImage
CI->>Builder: invoke build-release (WebKitGTK build)
Builder->>LinuxDeploy: assemble AppDir, run linuxdeploy (webkit build)
LinuxDeploy->>Artifacts: emit package-gtk-x86_64.AppImage
CI->>GitHub: upload `dist/*.AppImage` and create Release
Estimated code review effort🎯 4 (Complex) | ⏱️ ~45 minutes Possibly related PRs
Suggested labels
Suggested reviewers
Poem
🚥 Pre-merge checks | ✅ 4 | ❌ 1❌ Failed checks (1 warning)
✅ Passed checks (4 passed)
✏️ Tip: You can configure your own custom pre-merge checks in the settings. ✨ Finishing Touches🧪 Generate unit tests (beta)
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
|
Currently having issues with GTK building. |
|
Qt build works fine BTW. |
|
I'm going to temporarily disable gtk builds to see if all else works. |
|
As for the debian build, that's not my field of expertise, I'd suggest you take a look at it. Same for the webkit build, if you could figure out why it is giving me an error, that'd be great! |
|
I'm going to look at it again tomorrow. |
There was a problem hiding this comment.
Pull request overview
This PR adds AppImage packaging to the release pipeline so SEB Linux can be distributed as a more portable, “runs anywhere” artifact (helping address Fedora/unsupported-device reports like #16), and it also adjusts the prohibited-process detection to avoid a false positive.
Changes:
- Update release build script to produce an AppImage artifact (QtWebEngine path) and publish it via the release workflow.
- Remove a false-positive trigger from prohibited-process detection.
- Reformat/update README content to reflect packaging and improve readability.
Reviewed changes
Copilot reviewed 4 out of 4 changed files in this pull request and generated 7 comments.
| File | Description |
|---|---|
src/security/security_service.cpp |
Adjust prohibited-process list to reduce false positives. |
scripts/build-release.sh |
Switch release packaging to AppImage (currently with major workflow/safety issues). |
README.md |
Formatting + wording updates to reflect AppImage distribution and build instructions. |
.github/workflows/release.yml |
Publish dist/*.AppImage artifacts in CI and GitHub releases. |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
|
Notable copilot answers:
|
|
I'll push some fixes later today. |
again as the environment vairable didn't work.
|
Finally got past the linuxdeploy on the runner. |
|
We'll see if the ouput build works better. |
|
Allright, so I installed the built AppImage on my system using gear lever, unplugged my monitors, ... and opened the test from the teacher. It now works! I had to apply some restrictions manually using kde window rules as it doesn't automatically enable anti cheat but it fully works now. |
|
I'll finalize the PR now. |
|
Should be ready to merge, changes:
|
|
Codex usage limits have been reached for code reviews. Please check with the admins of this repo to increase the limits by adding credits. |
|
Changes for future PRs:
|
There was a problem hiding this comment.
Pull request overview
Copilot reviewed 8 out of 9 changed files in this pull request and generated 6 comments.
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
| constexpr int kSebRncryptorKeyLength = 32; | ||
| constexpr int kSebRncryptorIterations = 10000; | ||
| constexpr int kSebRncryptorVersion = 0x2; | ||
| constexpr int kSebRncryptorVersion = 0x3; |
Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com>
|
Allright, thanks for helping making the final touches, the reason I've changed the pull request template was purely to resolve markdown standard issues, see: https://rumdl.dev/. But that's completely optional, and these are just guidelines. |
There was a problem hiding this comment.
Pull request overview
Copilot reviewed 8 out of 9 changed files in this pull request and generated 5 comments.
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
| unset QMAKE | ||
| unset EXTRA_QT_MODULES | ||
| export QML_SOURCES_PATHS="$PROJECT_DIR"/src | ||
| export QMAKE=$(which qmake6) |
|
|
||
| if command -v apt >/dev/null; then | ||
| echo "installing dependencies" | ||
| sudo apt-get update | ||
| sudo apt-get install -y \ |
| const QByteArray computedHmac = QMessageAuthenticationCode::hash( | ||
| data.left(data.size() - hmacLength), authenticationKey, | ||
| QCryptographicHash::Sha256); | ||
|
|
||
| if (computedHmac == originalHmac) { | ||
| encryptionKey = deriveKey(passwordBytes, encryptionSalt); | ||
| authenticated = true; | ||
| break; | ||
| } |
| if ! wget -q "${url}" -O "${tmp_path}"; then | ||
| rm -f "${tmp_path}" | ||
| echo "Failed to download ${url}" >&2 |
| } | ||
|
|
||
| echo "Installing dependencies" | ||
| ${ROOT_DIR}/scripts/dependencies.sh |
|
LGTM! |


Summary
What Changed
Draft
Currently "it works on my machine" (debian container), but the GTK appimage build fails. That's why it's currently a draft. I'm actively working on fixing this and will report the status here.
Summary by CodeRabbit
New Features
Bug Fixes
Documentation
Chores