Flatpak vs. snap ~ snap vs. Flatpak

Cloud & Security

Cloud & SecurityRecently I ran numerous tests on Flatpak and snap in an attempt to determine which would be more useful in my environment. After about a week of testing, I have arrived at a pretty ‘surprising’ set of findings. They are certainly not what I expected to uncover.

Firstly, I should clarify that I tested both snap and Flatpak most exhaustively on my manjaro laptop. I, also, ran some isolated tests on several Debian and Ubuntu-based Desktops. In each environment, I noted (measured) performance as being largely superior with Flatpak.

With respect to my Flatpak/ Snap comparison, I have to say that many of my observations align almost precisely with an earlier article posted by “kmi” entitled: Adoption of Flatpak vs Snap (2018 edition).

Based on my investigation(s), I noted that of the two Flatpak…

  • seems to provide access to a larger application base;
  • consumes less memory and disk space;
  • is easier to install; and,
  • offers more straightforward, simple applications maintenance

I have to say that the biggest surprise I encountered involved applications availability. Flatpak really does seem to offer a considerably larger base of tools. But as with snap, most available applications are desktop oriented; and, any (Flatpak or snap) installation creates applications that ‘eat up’ large amounts of CPU and disk space. The only area where I found this resource consumption acceptable was with those applications which are KDE based. It is my experience that KDE applications, when run on non-KDE based systems, involve an all but unacceptable amount of extraneous overhead (to my mind). I suppose if I were desperate enough to burn ‘extra’ resources in order to gain access to specific KDE-only app, then snap and Flatpak do offer a lower maintenance approach to installing a native KDE app on my XFCE based laptop (again a personal opinion).

Having arrived at the above ‘conclusion(s)’, I was forced to re-examine my general application installation approach and applications portfolio. What I came up with truly surprised me. The biggest advantage I, personally, would really obtain from Flatpak or snap involved the sandboxing (security) of applications (excepting when KDE was involved where I, also, obtained a ‘lower’ KDE overhead ‘benefit.’).

If sandboxing was the greatest ‘typical’ advantage I could achieve, I thought, I really ought to include Firejail in “the mix” of how to install and use applications; and so, I expanded my analysis. When I install apps in Firejail on my desktop, I am able to obtain the following benefits:

  • applications sandboxing (It is hard for me to say if Firejail sandboxing is better than that provided by Flatpak or snap; although I assume it is no worse.)
  • Firejail offers me (post setup) the easiest most simple’ maintenance approach (it uses that of my Desktop Environment)
  • almost any application can be secured via Firejail (I’ll provide an article on this later.)
  • resource usage is extremely low (CPU and Disk see almost zero impact, much, MUCH better than what I get with either snap or Flatpak)

Obviously, this study was not scientific. The results are highly subjective and may be unique to my environment. But I have re-examined my applications setup and now have the following:

I do NOT use snap, at all.

I have the following Flatpaks installed:

  1. DropBox
  2. Skype
  3. ktuberling (a child’s KDE-only game)
  4. zoom (conferencing)

I now have the following Firejailed applications:

  1. chromium
  2. filezilla
  3. firefox
  4. gimp
  5. spotify
  6. transmission-gtk
  7. virtualbox
  8. vlc