-
Notifications
You must be signed in to change notification settings - Fork 415
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
Use AppImage for Linux builds #332
Comments
Please convince me that we want this, including downsides. |
|
Providing an AppImage would have, among others, these advantages:
Here is an overview of projects that are already distributing upstream-provided, official AppImages. |
What are the downsides to using AppImage? |
It is work to set it up and keep current. It is not integrated with the system's package management (which some consider a downside; others consider it a bug plus). |
With more users coming onboard, we need a universal installation method on Linux that will work across Distributions. If Appimage is intended to be that, we should pursue this further. |
@zestyr - we also had some discussion on flatpak here: #570 Do you know which would be the better route to go in order to support the most Linux distros? I see some comparisons here: |
Unlike Flatpak packages and other solutions, AppImages run on most Linux systems out of the box, do not need root, and involve no complicated commands on the command line. |
Per discussion still happening on #570, it doesn't seem like there is a consensus regarding AppImage vs. Flatpak. I'm open to changing this, but it's unlikely we're adding 2 new ways to package an app on our least popular OS. |
Throwing my hat in; I'm a Fedora user that started playing around with lbry this weekend (exciting project!). Seeing only a I prefer Flatpak, but I'm mostly indifferent as long as there is a portable option. If you're evaluating runtimes, I would also consider snappy. They're pretty much the 3 competing solutions, with as far as I can tell, no clear front-runner. |
Thanks @eriknelson and glad you were able to still get this set up. We'll look to get this fixed. Let me know if you'd be interested to contribute on this or elsewhere. |
This thread is about AppImage though. Check out the AppImage support built into electron-builder. Should really make it easy to produce an AppImage. |
Since we're using |
Someone already built flatpak support, it think that bridges the gap we were missing (unless I'm mistaken). https://flathub.org/repo/appstream/io.lbry.lbry-app.flatpakref |
As a Linux user, I have no strong opinions about packaging (the existing .deb works fine for me). To me the best improvement to make here is a better upgrade process (most likely via |
This may be possible using the publish features of |
@IGassmann have you looked at what Alex is doing in #808? Will publish work well with auto-updates?. |
I'll look if it's feasible when #808 will be merged. |
New reasons for using AppImage:
|
An AppImage still seems not to be available from the GitHub Releases page. |
@probonopd It'll be available for our next release which should appear next week. |
After discussing the fact that you need to change the file permission to launch an AppImage package, it was decided to rollback our changes and not use AppImage. Our app will still be distributed as a That step is not intuitive and might result in an unpleasant experience for our users. A possible solution for supporting non-deb distributions in the future will be to use snap builds. |
What?! This is a security feature of Unix-like systems, where an executable needs to have the execute permission in the filesystem. It is really easy to do: If you would like to get automatic desktop integration (and automatic setting of the execute permission for all AppImages), you can install the optional Compared to setting the executable bit on an executable (something that is not specifically an AppImage thing but needed for all executables), package mangers and similar systems are much more complicated. |
@probonopd when I double click a This is a clear step backwards from a UX perspective, at least on any system with support for Even more frankly, the fact that you can suggest that there are no UX issues around forcing users to right click and navigate complicated property menus every time they want to install a piece of software gives me doubt that you have proper mentality to understand how to build usable solutions. I've read enough of of your other comments on threads that I don't expect to convince you that you are wrong about this, though I do hope you will take this as feedback to drop the dogma you have on this issue. |
@probonopd I've re-read that comment and feel it may have been overly aggressive. I'm leaving it as-is as an indication of the strength of feelings I have about this issue. I do like the idea of AppImage a lot and I appreciate the work you are doing for the Linux and open-source community. |
@kauffj I agree that Linux desktops should do something useful (e.g., show a dialog) when a user double-clicks an executable (ELF) file that is missing the execute bit. We have an issue for this: Unfortunately this is not limited to AppImages, and we can't solve this within AppImageKit. Only the desktop environments (GNOME, KDE,...) can fix this. |
@probonopd I did some minimal googling but could not find open tickets for the desktop environments. Given age of AppImage/AppImageKit#374 I would guess these exist already? Could that issue be updated? I'm happy to throw whatever minimal weight we have towards supporting this. |
I don't think anyone has opened them so far. Hence the statement,
Thanks for your support on this topic. |
@probonopd ticket submitted for KDE and Gnome. |
AppImage allows you to make a single executable that can run on any Linux distribution with no setup or dependencies required. According to @filipnyquist electron-builder already has support for it, so the daemon just needs some changes.
The text was updated successfully, but these errors were encountered: