28

EDIT - This is not a duplicate of either referenced question because:

  • My question specifically states that I am interested in end-user experience, not ease or efficiency of development, which is what the other question largely refers to. As has been noted, development/deployment affects end-user experience, but it is not all there is to it, and neither of the referenced questions address issues that directly impact an end-user's ability to use the application (e.g. trouble accessing data on other partitions, sluggishness, etc.)
  • Maybe "compelling" wasn't the right word to use; my intent was to ask about real-world, experiential consequences, i.e., things that happen or don't happen, as opposed to theoretical/architectural statements that, while presumably accurate, don't appear to be backed up with any real-world examples to support the statement. I should have stated more directly that my intention was to get answers that consider the balance of "advantages" to snaps against the real-world downsides experienced by end-users. The "duplicate" question is largely theoretical, and doesn't discuss end-user experience at all.
  • The "duplicate" question makes no mention of anything remotely similar to the example I used here, i.e., that there is an end-user downside to snaps (in this case, lack of access to data on other partitions and snap app performance) that isn't discussed in any available documentation that I can find. End of EDIT

While I understand that snap has a big advantage in making apps more widely available, is there any compelling reason to choose snap over apt, if the app is available for my distro/version via an apt package?

I am curious because I've been doing some reading about snaps, and all the excitement about the method seems to be about things that are advantageous for app developers, but I've seen virtually nothing on how this makes life easier for end users (aside from the obvious; that they may be able to install apps that aren't otherwise available on their distro/version).

I installed snapd and installed a couple of snaps and was really frustrated and disappointed. The snap apps are slow and it's difficult, if not impossible, to access files on other partitions from within the snap.

While I've seen plenty of info that says snaps are "faster," "easier," "safer," etc., I haven't been able to find anything that explains why or how this is actually the case.

Being very new to Linux, I am wondering if maybe I'm just missing something obvious? To be clear, I understand why the technology might be useful overall, but I can't find anything that explains whether/why it is a better option even when the app in question is available for install via a more traditional method, and all dependencies are met.

  • Most applications in Ubuntu and other distros aren't uptodate. If you are happy with that, then no reason to use snap, obviously, you don't have to. – mikewhatever Aug 23 '17 at 3:15
  • @mikewhatever - I'm aware that I don't have to use snap - that's why I'm asking the question. Applications not being "uptodate" doesn't address my question, because uptodate is very vague - whether or not there is really an end-user disadvantage to an app being at the latest possible version is highly dependent on the specific situation. So my question about that is, how does the potential disadvantage of not uptodate weigh against the actual disadvantage of limitations created by installing an app via snap. – LSharkey Aug 23 '17 at 20:28
  • 1
    I voted to reopen, however your point (1) directly affects users because it relieves both users and developers from the task of (potentially) complicated software deployment leading to a better overall experience. – David Foerster Aug 23 '17 at 23:29
  • @muru - no, it's not a duplicate. The question you referenced doesn't address the downside to end-user experience with snaps. – LSharkey Aug 24 '17 at 5:01
  • I did mention two - higher disk usage, possibility of lack of security updates. Other than that, what downsides are you talking about? – muru Aug 24 '17 at 5:03
15

I can share the results of some experimenting with two versions of LibreOffice 6.1.3.2: one as a snap delivered with ubuntu 18.04 and another one installed from the official ppa. Please keep in mind the values I give below are approximate.

Startup time of an empty Calc spreadsheet

  • ppa: 1.5 s

  • snap: 13 s

Conversion time of 13-slides (mostly png pictures) to pdf with impress

  • ppa: 9 s

  • snap ~70 s

Disk usage [MB] (expected / real)

  • ppa: 369 / 483

  • snap: 507 / 1269

I realize these values depend on the hardware and specific configuration of the system I'm using. However, considering I have used the same laptop, operating system and LibreOffice versions, I believe relative comparison is still informative.

Altogether, on my laptop snap image occupies more than 2 times the disk space and it is almost 10 times slower than the corresponding ppa. In contrast with common opinions subsequent startups of snap application are not faster on my system.

My personal view on the end-user's benefits of snap is related only to system security (no sudo required to install, limited runtime permissions). So if you're running a personal system at low risk, I'd stick to ppa's. In such cases the enhanced security is not worth the cost of much worse performance in the present-day snaps.

9

Canonical says...

Snaps work on any distribution or device. Snaps are faster to install, easier to create, safer to run, and they update automatically and transactionally so your app is always fresh and never broken.

I also prefer apt to manage my package on ubuntu but if you are in another ditribution, you maybe want to install something that isn't available in distribution's package manager but maybe is available in snap. Canonical wants to "replace" apt with snap because they think that snap is more stable and it's easier for the developers to create the package.

Snaps are a lot safer! The snaps you install are installed in defferent volume in your hard drive. You can manage the permissions of the app like you do on Android 6.0 and later. You can block apps of using your camera or microphone and access the files in your home directory.

Indeed there are some problems with theme compatibility but snaps are safer and give you access to packages in most distributions.

  • Thanks, but your answer doesn't address my question. I am very aware of Canonical's "official" explanation. What I specifically asked about in my question has to do with managing the non-advertised down-sides (as related to end-user experience" of using snaps). – LSharkey Jul 19 '18 at 22:26

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.