-
-
Notifications
You must be signed in to change notification settings - Fork 143
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Experiment: Fix building of AppImage version #1069
Experiment: Fix building of AppImage version #1069
Conversation
After a lot of floating trial balloons over the GitHub Actions wall, I've got it working! Next step is to clean it up. |
OK, I've cleaned up the script and explained it thoroughly so that people understand why it needs to exist. At this point, I've proven that an I have not yet tried the ARM Linux job on Cirrus, but the step is present in I'll keep this in draft at least until #1066 is landed, but at least I can think about other things for a while. |
26186b5
to
0b44f36
Compare
I've squashed all the silly trial-and-error commits and rebased this atop latest Since I made this PR, I've switched from an Intel Mac to an M3 Mac, so this might be tricky to test. (Ideally, a Linux user would be able to review this; but we saw how well that worked with #1066.) If you're willing to review this, ping me on Discord and I'd be happy to guide you through it. |
Looks good in testing! Testing notes: (In summary: This all lines up with what you saw, also tested the latest Rolling AppImage to see which things changed and which were the same. This PR's AppImage fared either better or the same as Rolling, depending on the individual flags/modes etc. under test.)
FWIW: Tested in a Fedora LiveUSB environment again. https://torrent.fedoraproject.org/torrents/Fedora-Workstation-Live-x86_64-40.torrent This was the Rolling binary used: https://github.com/pulsar-edit/pulsar-rolling-releases/releases/download/v1.121.2024101617/Pulsar-1.121.2024101601.AppImage This was this PR's binary used: https://github.com/pulsar-edit/pulsar/actions/runs/11283342186/artifacts/2043016356 |
I have been following this saga closely enough to be familiar with the steps required to make this happen. So, the script looks reasonable to me. Glad there are some comments for those not sure what's going on, but maybe a quick summary comment would mostly cover it? Something like "We need to repackage this to launch our custom launcher script, rather than the bare Electron binary directly, for complete functionality. No easy tooling to do this, so we unpack, modify, and repack." Almost feels a bit overwhelming with this degree of comments. But better than no context at all, that's for sure! |
Added. Thanks for the review! |
@DeeDeeG I should mention that I haven't checked any of this on arm64 — the step is in place in |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Hard to pass up the chance to review a user-facing improvement as fundamental as making CLI args work as expected.
(I hear users love user-facing enhancements!)
Big approve 👍
@savetheclocktower I tried to spin up a Cirrus run of this, but had a 401 error downloading ripgrep for unknown reasons. Wouldn't mind seeing a passing Cirrus run just to be safe. EDIT: But would be surprised if this fails, and I would have trouble actually testing an aarch64 AppImage, so... not something I feel I can do due dilligence as a reviewer beyond "Cirrus doesn't explode with this change." Nice to have but not necessarily a blocker, I guess. |
Fun. My only concern is whether the CI job needs extra dependencies, but I suppose we'll find out when the binary job runs. If the job succeeds, the AppImage should run just fine. I'll be around in the next day or two and summonable in case we run into trouble. |
Just want to mention on this Pull Request thread why we had to change It's due to this: https://github.com/AppImage/AppImageKit/blob/e8dadbb09fed3ae3c3d5a5a9ba2c47a072f71c40/src/appimagetool.c#L360-L393 Have to speak Specifically this bit here: |
My various comments in #1053 explain why this PR exists. Excerpts:
Then, the breakthrough:
Testing
If you're on an x86 architecture, you should be able to run a lightweight Linux VM (I used LXLE originally) to verify that you can download the AppImage product from this PR’s CI run. You should be able to follow the steps detailed above; in general it should work identically to invoking
pulsar
from the command-line as is possible in other installation types.