Do you have experience with AppImage?

Hello friends

I have the intention to install HTTPie to be used in Terminal as client.

Well exists the Desktop GUI client too and to install httpie desktop in Linux the approach is through AppImage

Do you have experience with AppImage?

I’ve used different versions of Python that are AppImage format.

They seemed to work well. I can’t think of any other time I’ve used AppImage. Snaps and flatpaks are what I generally use.

1 Like

Hi Manuel,
I use a lot of programs distributed in AppImage.
What help do you need?

Jorge

3 Likes

Do clarify what kind of help you are looking for.

You can also refer to: How to Use AppImage in Linux [Complete Guide]

3 Likes

Thanks to all for the replies.

My main concern was if is trustable and fast. I remember in other post I requested some help about snap and 1 or 2 persons indicated me to avoid it, but never gave the reason.

It is the reason I wrote this post as a general question.

Thanks for your understanding

1 Like

Hi Manuel, :wave:

I certainly prefer appimages over snaps.
The reason for that is that - unlike snaps - appimages can be run in a firejail sandbox.
There´s a dedicated option for that: --appimage .

So appimages can certainly be run in a more trusted way.

E.g.: here´s my command for running cool retro term in a closely restricted environment:

cd /media/rosika/f14a27c2-0b49-4607-94ea-2e56bbf76fe1/DATEN-PARTITION/Dokumente/Ergänzungen_zu_Programmen/zu_cool-retro-term/; and firejail --profile=/etc/firejail/default.profile --appimage --private=(pwd) ./Cool-Retro-Term-1.1.1-x86_64.AppImage; and cd

Cheers from Rosika :slightly_smiling_face:

3 Likes

Hi Manuel,

I’ll give you my personal opinion and I’d be grateful if forum users could correct me if I’m wrong.

“Trustable”
How can we decide if a program is “trustable”?
What I do: I usually only use releases from GitHub, try to find out if there is information about the program I want to use, always take into account the “stars” of the program and whether it has the checksum of the AppImage version.

After downloading, I always check the program’s checksum. However, I use programs that don’t have checksum information (I also take risks…)

“Fast”
A program in AppImage format is “portable”, i.e. it comes with all the libraries and the like, so it’s a program that doesn’t depend on the distro you have or the versions of certain libraries you have installed.
In my opinion, it might be slower to start up, for example, the same program but in deb package format, and it might use a bit more memory (I’ve never checked), but on the other hand, if the program has libraries that you don’t have installed or that are newer than those in your distro, the program in AppImage format will always run.

In my opinion, some programs are slower. For example, it’s because they’re made in Electron and take longer to load than others, but that’s just my opinion.


A practical example of what I think about AppImage - The Joplin program:

  • It has 42.7k stars
  • It has 598 contributors
  • 333 releases
  • Has a SHA-512 checksum to ensure the integrity of the AppImage file

Is it reliable?
I think so

Is it trustable?
Again, I believe so.

Is it fast?
On my PC it takes a while to boot up, but then it’s fast.
On Android, it used to be slow, but now it’s very fast.

Is it reliable?
I think so

Is it reliable?
Again, I believe so.

Is it fast?
On my PC it takes a while to boot up, but then it’s fast.
(On Android, it used to be slow, but now it’s very fast.)


In short, and as I said in the previous post: I use a lot of programs in AppImage format, but I don’t always follow these rules because it’s not always possible, for example, to confirm the checksum, and I decide to take some risks and use the programs I really want to use.

As far as the “garbage” left by AppImages on the system is concerned, as far as I’ve noticed, it’s very little - in ~/.config, I think also in ~/.local/Share (I’m not at my PC…) and not much else.

The AppImages programs are placed in ~/AppImages

I don’t know if this post addresses what you want to know

EDIT:
Please read Rosika’s post regarding security issues (she wrote it when I was writing my post)

Jorge

2 Likes

They for one take too much room up, are not good where security is concerned, lots of malware found over the years, they break or never work properly.

1 Like

There are a few apps I use that come as appimages. I’m careful to make sure that the appimage comes directly from the apps’ vendor (not some third party), or the Appimage Store.

In my experience, the Appimage apps I’ve used work well, and seem to be stable. I’ve had no complaints or issues with them.

Ernie

2 Likes

Hi all, :wave:

I noticed the security aspect seems pretty prominent here. At that´s certainly justified.

Please correct me if I´m wrong, but as far as I know one has to make an appimage executable for it to work:
chmod a+x NAME_OF_FILE.AppImage (see here).

So, wouldn´t it be beneficial to run an appimage without having to do that?
And indeed it can be done.

I don´t want to over-advertise the firejail sandbox, but once again it comes in handy in this case:

Running an appimage within firejail is possible without its need to be executable. :blush:

rosika@rosika-Lenovo-H520e /m/r/f/appimages> ll kgw_Geany-1.24.1-x86_64.AppImage 
-rw-rw-r-- 1 rosika rosika 6,5M Apr 19 13:14 kgw_Geany-1.24.1-x86_64.AppImage

and…

cd /media/rosika/f14a27c2-0b49-4607-94ea-2e56bbf76fe1/appimages/; and firejail --net=none --appimage ./kgw_Geany-1.24.1-x86_64.AppImage; and cd
Reading profile /etc/firejail/geany.profile
Reading profile /etc/firejail/allow-common-devel.inc
Reading profile /etc/firejail/disable-common.inc
Reading profile /etc/firejail/disable-programs.inc
Warning: networking feature is disabled in Firejail configuration file
Parent pid 9486, child pid 9487

** Warning: dropping all Linux capabilities and setting NO_NEW_PRIVS prctl **

Mounting appimage type 1
Child process initialized in 141.44 ms
/run/firejail/appimage/AppRun: ./lib/libselinux.so.1: no version information available (required by /lib/x86_64-linux-gnu/libgio-2.0.so.0)
/run/firejail/appimage/AppRun: ./lib/libselinux.so.1: no version information available (required by /lib/x86_64-linux-gnu/libmount.so.1)

It works:

… and shutting down doesn´t produce any errors:

Parent is shutting down, bye...
AppImage detached
rosika@rosika-Lenovo-H520e ~> echo $status
0

Many greetings from Rosika :slightly_smiling_face:

2 Likes

Hello friends

Huge thanks to all for your time and feedback provided, pls give me some days to reply each answer.

Thanks for your understanding

2 Likes