-
Notifications
You must be signed in to change notification settings - Fork 16
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
Fix some issues with appimage #31
Conversation
Arrow icons still seem to be missing, otherwise good work, thanks for working on the AppImage |
how does the arrow icon look like and where should it be? |
The issue seems to happen sometimes, especially on non-qt desktop environments. Perhaps it's something I'm doing wrong, perhaps it isn't but the app uses a few XDG icons and they aren't showing in these cases. We had an issue for this #22 |
That's promising, thank you. Does Sharun still have these issues with AppImage Launcher, since a lot of people seem to be using it? Also, I wonder if it would be possible to ask for password only once and run QDiskInfo as root on Launch. I asked from my friend @qurious-pixel to review this PR since he is more knowledgeable when it comes to building AppImages. I'll be back in two weeks so if there's no review by then I will review it instead. Big thanks for your effort, I really want a better AppImage experience for the project. |
The issue with appimageluancher is that it does not support the static appimage runtime which doesn't have to do with how the appimage is bundled, there isn't anything that can be done other than downgrading to the old runtime, and that means that the appimage would stop working on alpine and on glibc systems the appimage would have the dependency to I use AM instead as an alternative, and others use Gearlever. |
@Samueru-sama I am able to load into glibc, but on alpine, I am met with error messages. |
That's weird, I originally tested the AppImage with distrobox but I didn't test on an vm, I just launched a voidlinux musl vm to test: EDIT: Also I just noticed I don't have the broken arrow icons like I did on the original image, which means the icon is missing from my icon pack 😅 |
@qurious-pixel do you also get an error if you run it without doas? |
Oh didn't notice the doas, that's likely the issue, doas unsets all env variablas as far as I know. Here is with sudo on the voidlinux musl vm: And here is with doas: Why was doas even used? does that fix the issue I talked about with |
Hello all, sorry for the big delay. @Samueru-sama I like your idea of downloading the binary when it isn't installed. Do you think you could implement it? I can host certain official binaries on a separate repo if needed. As for this PR is it ready for merge, or do you want to make more additions and/or changes? |
The following script has to be sourced in the AppRun, it is missing the download url since ideally that has to be hosted on a separate repo:
Yeah it was ready, the only thing is that the AppImage builds on alpine have to removed since go-appimage can't find Qt for some reason on alpine. |
Since the appimage built on Ubuntu shall work on non GNU distros, the Alpine build job can be removed |
Thanks for the bash script, I'll look into modifying it an implementing it. Since smartctl is a command that pertains to dangerous operations like low level hard drive access some distros like OpenSUSE place the smartctl binary on /usr/sbin or /usr/local/sbin which is not in path, so we need to add it in path for example. |
This is the PATH that I have by default on Artixlinux: This is on alpine: Also some shells will set PATH to a hardcoded value similar to the alpine one if the variable for some reason is not set. |
Not all distros have it on path, I'm guessing that some do. Also the appimage still doesn't run on native wayland mode, just checked. |
kek this is insane: Alright in that case in this line of the script: It would need to change for:
Before I try anything can you confirm that this one works with native wayland mode? It is also a Qt app: https://github.com/pkgforge-dev/strawberry-AppImage/releases/tag/1.2.3-1 |
You were already downloading go-appimage, I just used it to deploy everything instead.
The produced appimage works on both glibc and musl systems since I used
-s deploy
which bundles everything, including theld-*.so
.Also the musl appimage build is broken right now because go-appimage can't find the Qt plugins on alpine, doesn't matter anyway since the appimage made in ubuntu works on alpine as well.
I manually added the qt6ct plugin to have working dark theme, however this isn't perfect yet as it would only work for the people that use qt6ct, but maybe something similar can be done for other themes:
(I don't know what that Broken filename error is about btw, so far everything seems to work)
Also go-appimage already deploys the static appimage runtime, you don't need
libfuse2
(and shouldn't have needed it before I changed it either since go-appimage was being used to turn the AppDir into an appimage).You still need a
fusermount
orfusermount3
binary, which ubuntu should havefuse3
shipped by default.Not sure if wayland works now, since I don't use wayland I can't test.
I also had to remove the
smartctl
binary from the appimage because it did not work, for some reason it only works when the appimage is extracted, I tested unsetting the env variablesAPPIMAGE APPDIR OWD ARGV0
which is one of the few things the appimage runtime sets, and it still didn't work. I have no idea but this seems like a fuse limitation with smartctl?The issue is not with the smartctl binary, as I copied it to my
$XDG_BIN_HOME
and repackaged the appimage and it works just in case.This issue of smartctl can be fixed by making a hook that detects if smartctl isn't in PATH, if it is not then it downloads the binary to a temp location and adds that location to path, like I do here with yt-dlp for example.