Suggestion: Display Minimum Recommended Hardware/Software Specs for Snap Packages

Hello!

Whilst downloading a Snap, I realized it would be super useful to see the minimum system requirements for what I was downloading. What if we added minimum recommended specs for each Snap? This way, users can still download and install them, but they’ll know what kind of hardware is best for running them smoothly.

Why This Could Help

  1. Better Choices: If users can see the recommended specs, they’ll have a better idea of whether an app will run well on their system. No more surprises when something doesn’t work as expected!

  2. Set Expectations: Knowing the minimum requirements can help users understand what kind of performance to expect. It could save a lot of frustration for those on older or lower-end machines.

  3. Help Developers: Whilst this could mitigate performance issues and crashes, I also understand that adding specs for every single Snap could be a pain for developers, so I suggest we focus on mainstream or verified packages—like Firefox, VSCode, Blender, etc. This way, we can provide valuable information without overwhelming developers. (note: automate process ? → privacy concerns)

  4. Precedent in Other Stores: There’s also precedent for this in the Microsoft Store, which includes minimum system requirements for its applications. This practice helps users make informed decisions and enhances their overall experience.

What I’m Thinking

It would be great if the Snap store could include a little section on each app’s page that lists things like:

  • CPU: What kind of processor you should have (like Dual-core or Quad-core)
  • RAM: How much memory you’ll need (maybe 4 GB?)
  • Disk Space: How much free space you should have (like 1 GB)
  • OS Version: The recommended version of Ubuntu or other dependencies

Wrap-Up

I really think this could make a difference for both users and developers. It would help everyone have a better experience with Snap packages!

What do you all think? Would this be a good idea? I’d love to hear your thoughts!

Thanks for reading!

This is an interesting thought.

Of course, some of these things are a little hard to predict. For example, let’s think about RAM and Firefox. If you’re on one tab to some text-only site, it uses very little. If you have 50 tabs opened with a bunch of web apps (especially anything from Google), it’s a very different scenario. So you can give minimums but that may not be realistic.

Additionally, wouldn’t we want to apply this exact same thinking to all the packages in Ubuntu, including the Debian packages?

One other thing: recommended OS wouldn’t really make a lot of sense. Theoretically, Snaps are universal, so we’d have to answer this for all the Linux distros out there.

I see where you’re coming from with your first point, and honestly, I’m not sure how to solve that either! However, I still think having some kind of indicative starting point for minimum specs would be helpful for users.

Regarding Ubuntu and Debian packages, I believe that for the average user, the Snap store is likely to become the primary method for managing updates and applications in the future. While we don’t have much control over Debian packages, we can enforce standards with Snaps.

As for the OS aspect, you’re right that Snaps are universal. I was thinking more about differentiating between server and desktop environments. Alternatively, we could focus on general compatibility guidelines and dependencies. This approach would allow us to provide useful information without being overly specific.

What do you think about these ideas? I’d love to hear your thoughts!

It’s been talked about elsewhere here that it’s a near-zero chance that we will ever see a time where there are no Debian packages in Ubuntu. Some Snaps even depend on them. So we can’t look to Snaps and ignore Debian packages. We have to apply what we do to both.

I’m not sure what you mean here. We have control over both. To be clear, when I say “Debian packages,” I don’t mean “packages that exist solely in the repositories controlled by the Debian distro” but I mean “packages distributed in Ubuntu repositories that use Debian packaging.”

Again, when thinking universally, even that is irrelevant.

woops, posted prematurely , didn’t finish what I had to say.

You’re right that Debian packages aren’t going anywhere in Ubuntu, and some Snaps even rely on them. However, Snaps are really starting to stand out for everyday users. They simplify handling updates and packages, so you don’t need to be a tech expert to figure things out. Installing and removing apps is straightforward, without the usual headaches of dependency issues that come with Debian packages. They also enhance security by keeping apps isolated from each other and the system. From a UI perspective, Snaps are a game changer when it comes to using the terminal, making it easier to navigate without needing a deep understanding of what’s going on under the hood. Plus, with automatic updates, users can enjoy the latest features and security fixes without any extra effort. So while we should definitely keep both in mind, Snaps are making things a lot easier for the average person just looking to get their desktop up and running.

That said, you’re right that we need to consider both options. I’m not entirely sure how to implement to Debian packages, but it’s definitely something worth exploring.

My fault, sorry still new to Ubuntu and linux and my knowledge is limited regarding this.

However you are right it would be worth while looking at doing it universally both deb and snap packages