bepaald / signalbackup-tools

Tool to work with Signal Backup files.
GNU General Public License v3.0
790 stars 38 forks source link

Package as AppImage for Linux #121

Closed Regular-Baf closed 1 year ago

Regular-Baf commented 1 year ago

I think this would greatly enhance the ease of use for running this application on Linux, and make it much easier to get up and running quickly on a variety of systems.

bepaald commented 1 year ago

Thanks for your suggestion. At first I was not too keen on this, just because of the extra work (and if AppImage, why not flatpak, snap,... etc). But I figured if some people are helped by it, and I can probably automate it, why not?

Well, after much fiddling, it seems to be impossible to create an AppImage without a .desktop file and an icon. The .desktop was already not making sense to me for a (non-interactive) cli program, but I am definitely not going to be designing an icon.

I thought at first I was just missing some option, but then I found some AppImage bug reports that make it clear this is by design. The bugs on it were closed, and the AppImage author states: "AppImage was conceived with GUI applications in mind" and while some workarounds for cli programs may exist, it was never the goal to support them. This seems so bizarre to me, they have the intention to be the cross-distribution application deployment method, but they exclude all cli (=most) applications. Also, this info is not mentioned anywhere on their website or in their docs (as far as I can tell).

Anyway, unless I'm missing something (and I might be, please let me know) or AppImage changes their views, this is not happening.

If you need help compiling this program please let me know. Note, there is now also a (currently undocumented) cmake option which may ease compilation (just cmake -B build && cmake --build build -j should do it).

Regular-Baf commented 1 year ago

Thanks for getting back to me, and I'll give cmake a try.

Most of the AppImages I use don't really integrate with the desktop as a native/flatpak would, but that could just be a configuration thing with me. If it would help, I'd gladly design an icon of some sorts if it would enable this release.

bepaald commented 1 year ago

No thanks. I could actually just pass an empty file as an icon, though it's an ugly workaround.

The thing is, I don't want this program to appear in start-menu's and similar. It just doesn't make sense, like having a menu entry for cp or ls. I can just see the bug reports coming in: I have already had multiple by Windows users who double-click the exe to open after which nothing happens or their terminal pops up for a split-second before automatically closing because the program ended successfully (with no arguments).

It boils down to this: AppImage apparently does not want cli programs to use it, so I won't.