Skip to content

Add AppImage builder workflow #17

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

Merged
merged 9 commits into from
Oct 7, 2023
Merged

Conversation

git-developer
Copy link
Contributor

Follow-up of v1993/evdevhook2#3

Would be great if you could provide a beautiful icon ;)

@git-developer git-developer changed the title Create a GitHub Release with multi-platform AppImage binaries Add AppImage builder workflow Sep 6, 2023
@v1993
Copy link
Owner

v1993 commented Sep 6, 2023

Calm down, I can only review so much stuff 🙃.

On a serious note, I'd appreciate if you incorporated my tweaks from v1993/evdevhook2@acbc937 into this PR.

I can't really promise a beautiful icon, but I'll look into making at least a decent-ish one.

@git-developer
Copy link
Contributor Author

I incorporated main a few days ago, the only missing thing is an icon.

@v1993
Copy link
Owner

v1993 commented Sep 10, 2023

I've seen that, thanks! I just didn't get to this PR yet.

In the meantime, could you, please, look into v1993/evdevhook2#4? I'd rather have X-AppImage-Integrate=false set in appimage's desktop file before making a release. It's not a blocker for merging, but would be greatly appreciated.

@git-developer
Copy link
Contributor Author

I'm currently busy, but can have a look later on. Maybe an after_bundle script can be used to patch the desktop file (docs).

@v1993
Copy link
Owner

v1993 commented Sep 10, 2023

@git-developer I've tried with hooks for various stages but wasn't able to affect the resulting desktop file. See v1993/evdevhook2#5.

@v1993
Copy link
Owner

v1993 commented Sep 10, 2023

I'd appreciate if you ported recent changes to evdevhook2 appimage build process here. Also, v1993/evdevhook2@eec133c.

@v1993
Copy link
Owner

v1993 commented Sep 10, 2023

Thanks a ton! Hoping to make an icon and get this merged tomorrow.

@git-developer
Copy link
Contributor Author

Also, v1993/evdevhook2@eec133c.

Including a single branch effectively excludes all tags. Is that on purpose?

@v1993
Copy link
Owner

v1993 commented Sep 10, 2023

Also, v1993/evdevhook2@eec133c.

Including a single branch effectively excludes all tags. Is that on purpose?

Definitely not. Thanks for catching that!

How about running on release instead of on all tags, though?

@git-developer
Copy link
Contributor Author

I don't know if there's a way to find out whether the build trigger was the creation of a GitHub Release, and didn't find anything about it in the docs either.

But if you plan to have more tags than releases, you can employ a naming convention to distinguish releases from other tags, e.g. tags: "v[0-9]+.[0-9]+.[0-9]+".

@v1993
Copy link
Owner

v1993 commented Sep 10, 2023

Can't you simply use release (on published) as a workflow trigger?

@git-developer
Copy link
Contributor Author

You're right, I read the wrong document. Something like this:

on:
  pull_request:
  push:
    branches: main
  release:
    types: published

@git-developer
Copy link
Contributor Author

I'd like to ask you to have a look at another suggestion, a refactoring that moves platform information from the build directory name into a dedicated .env file. It avoids that build output must be copied or moved. If you agree that this would be an improvement, I will add it to this PR.

@v1993
Copy link
Owner

v1993 commented Sep 11, 2023

I'm a bit skeptical about that - does documentation describe the location of TARGET_APPDIR? If yes - sure, go for it. If not, I wouldn't rely on something left unspecified. That said, even if it's left unspecified, I much prefer the new version, so with minor tweaks (and leaving a call to mv/cp) it's still much better than what is used now.

refactor(build): use env file for build metadata
@git-developer
Copy link
Contributor Author

Thanks for your feedback.

I found no "normative definition" of AppDir as default path for the AppDir directory, but the docs are full of AppDir examples and the source code uses AppDir as default.

There's an argument --appdir to set a custom AppDir when running appimage-builder, this is what TARGET_APPDIR is set to. I thought I could use this arg to ensure defined behavior, but unfortunately the GitHub action has a bug that prevents setting it.

Thus I partly reverted my suggestion, using a separate build directory and moving the files. What "minor tweaks" do you have in mind?

@v1993
Copy link
Owner

v1993 commented Sep 22, 2023

Hey, just so that you know - I haven't forgotten about this PR, just had other personal issues to deal with recently. Hoping to get this done and merged soon.

Minor tweaks I've been speaking about were already implemented as part of your latest changes, so that is not a concern. I'd greatly appreciate if you would PR equivalent of two last commits to evdevhook2 in the meantime.

@v1993
Copy link
Owner

v1993 commented Oct 6, 2023

Sorry for sitting on this for so long! Add this icon and it'll be good to go.

linuxmotehook2

@git-developer
Copy link
Contributor Author

No problem!

@v1993 v1993 merged commit 03d65d0 into v1993:main Oct 7, 2023
@git-developer
Copy link
Contributor Author

Would be great if you could create a release at some time later on.

@v1993
Copy link
Owner

v1993 commented Oct 17, 2023

Sure, I'm planning on that! I just want to commit a few other changes first before making a new release.

@git-developer
Copy link
Contributor Author

Great. No need to hurry, just wanted to be sure. Thanks!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants